Computer program for communication device, communication device, and method executed by communication device
A computer program for communication devices optimizes Wi-Fi connection setup by guiding users through appropriate acquisition methods, ensuring stable connections and reducing processing load through automated device state transitions.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- BROTHER KOGYO KK
- Filing Date
- 2022-06-28
- Publication Date
- 2026-06-23
AI Technical Summary
Existing technologies face challenges in establishing a stable and efficient Wi-Fi connection between communication devices using methods like QR codes, NFC, and Bluetooth, particularly in transitioning devices to a DPP responsive state for seamless communication.
A computer program for a communication device that displays selection information for acquiring a bootstrapping key, performs authentication requests, and establishes a Wi-Fi connection using a combination of QR codes, NFC, and Bluetooth, ensuring proper device configuration and communication.
Facilitates the establishment of a reliable Wi-Fi connection by guiding users through appropriate acquisition methods based on device models, reducing processing load, and enhancing user convenience by automating device state transitions.
Smart Images

Figure 0007877879000001 
Figure 0007877879000002 
Figure 0007877879000003
Abstract
Description
Technical Field
[0001] This specification discloses a technology for establishing a wireless connection between a communication device and an external device.
Background Art
[0002] Patent Document 1 discloses a technology for establishing a Wi-Fi connection between a pair of devices according to DPP (abbreviation for Device Provisioning Protocol). In particular, Patent Document 1 describes that a terminal acquires a public key of a printer by using any one of means such as a QR code (registered trademark), NFC (abbreviation for Near Field Communication) communication, and Bluetooth (registered trademark) communication.
Prior Art Documents
Patent Documents
[0003] [[ID=!1]]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] This specification provides a technology for appropriately establishing a Wi-Fi connection between a communication device and an external device.
Means for Solving the Problems
[0005] This specification discloses a computer program for a first communication device. The first communication device may include a Wi-Fi interface for performing Wi-Fi communication in accordance with the Wi-Fi standard, a display unit, and a computer. The computer program controls the computer to display on the display unit first means selection information including M acquisition means (where M is an integer of 2 or more) for acquiring a bootstrapping key for a communication device different from the first communication device; a second display control unit which, when a specific acquisition means is selected from the M acquisition means included in the first means selection information, displays on the display unit specific support information corresponding to the specific acquisition means from among M support information corresponding to the M acquisition means, wherein each of the M support information is information for supporting the acquisition of the bootstrapping key for the different communication device by the acquisition means corresponding to the support information; and after the specific acquisition means is selected, the program controls the bootstrapping key for the second communication device different from the first communication device. The system may function as follows: an acquisition unit that acquires a specific bootstrapping key, which is a strapping key, by a specific acquisition means; an authentication request transmission unit that, when the specific bootstrapping key is acquired, transmits an authentication request using the specific bootstrapping key to the second communication device via the Wi-Fi interface; an authentication response receiving unit that, when the authentication request is transmitted to the second communication device, receives an authentication response from the second communication device via the Wi-Fi interface; and a connection information communication unit that, when the authentication response is received from the second communication device, communicates connection information with the second communication device via the Wi-Fi interface, wherein the connection information is information for establishing a Wi-Fi connection between the first communication device or the second communication device and an external device.
[0006] According to the above configuration, the first communication device displays first means selection information indicating M acquisition means for obtaining a bootstrapping key, and displays specific support information corresponding to the selected specific acquisition means. As a result, a specific bootstrapping key is obtained by the specific acquisition means, and various communications such as sending an authentication request are performed. As a result, a Wi-Fi connection can be properly established between the communication device and the external device.
[0007] The computer-readable recording medium for storing the computer program for the first communication device described above, the first communication device itself implemented by the computer program, and the method executed by the first communication device are also novel and useful. [Brief explanation of the drawing]
[0008] [Figure 1] This document outlines the communication system and the features of each printer. [Figure 2] The control configuration for each device is shown. [Figure 3] This shows a flowchart of the processes performed by the application. [Figure 4] The flowchart continues from Figure 3. [Figure 5] The sequence diagram for Case A1 is shown. [Figure 6] The sequence diagram for Case A2 is shown. [Figure 7] The sequence diagram for Case B is shown. [Figure 8] The sequence diagrams for Case C1 and Case C2 are shown. [Figure 9] The sequence diagram for case D1 is shown. [Figure 10] The sequence diagram for case D2 is shown. [Figure 11] The sequence diagram for Case E is shown. [Figure 12] The sequence diagrams for Case F1 and Case F2 are shown. [Figure 13] The sequence diagram for case G1 is shown. [Figure 14] The sequence diagram for case G2 is shown. [Modes for carrying out the invention]
[0009] (Outline of communication system 2; Figure 1) As shown in Figure 1, the communication system 2 comprises an AP (Access Point) 6, multiple printers 10A to 10G, and a terminal 100. In the following, when printers 10A to 10G are not specifically distinguished, they may simply be referred to as "printer 10". In this embodiment, it is assumed that the terminal 100 is used to establish a wireless connection (hereinafter referred to as "Wi-Fi connection") between each printer 10A to 10G and the AP6 in accordance with the Wi-Fi standard.
[0010] (Features of each printer) The characteristics of each printer 10A to 10G are described below. The table in the lower right of Figure 1 shows the setup information output means for each printer 10A to 10G. The setup information output means is a means for outputting setup information, which is used when establishing a Wi-Fi connection between printer 10 and AP6. The setup information includes the public key of printer 10.
[0011] Printer 10A can output setup information by displaying a QR code (registered trademark) obtained by encoding the setup information. Printer 10B is equipped with a housing 50 (see Figure 1) to which a QR code QRB obtained by encoding the setup information is attached.
[0012] Printers 10C to 10E can output setup information by using wireless communication conforming to the Bluetooth (registered trademark) standard. Hereinafter, Bluetooth will be referred to as "BT", and wireless communication conforming to the BT standard will be referred to as "BT communication". The BT standard is, for example, the standard of IEEE802.15.1 and standards equivalent thereto. More specifically, each of printers 10C to 10E supports BLE (abbreviation for Bluetooth Low Energy). BLE is realized in versions 4.0 and later of the BT standard. In particular, printer 10D uses an advertisement signal to transmit setup information to terminal 100. Each of printer 10E and printer 10F uses a one-to-one connection by BT (for example, GATT (abbreviation for Generic Attribute Profile)) to transmit setup information to terminal 100.
[0013] Each of printers 10F and 10G can output setup information by using communication conforming to the NFC (abbreviation for Near Field Communication) method (hereinafter referred to as "NFC communication"). The NFC method is, for example, a wireless communication method based on international standards of ISO / IEC21481 or 18092. Printer 10F directly transmits setup information to terminal 100 by using NFC communication. Also, printer 10G uses NFC communication to transmit information for establishing a Wi-Fi connection with the printer to terminal 100, and uses the Wi-Fi connection to transmit setup information to terminal 100. Thus, in some cases, communicating information for establishing a Wi-Fi connection by using NFC communication between a pair of devices and then communicating target data by using the Wi-Fi connection is referred to as "NFC handover".
[0014] (Control configuration of each device; FIG. 2) Subsequently, referring to FIG. 2, the control configurations of printer 10 (that is, each of printers 10A to 10G) and terminal 100 will be described.
[0015] (Configuration of Printer 10) Printer 10 is a peripheral device capable of executing a printing function (e.g., a peripheral device of Terminal 100). In a modified example, Printer 10 may be a multifunction device capable of executing a scanning function, a facsimile function, etc. Printer 10 includes an operation unit 12, a Wi-Fi interface 16, and a print execution unit 18. Hereinafter, an interface will be described as an "I / F". The operation unit 12 includes a plurality of keys. The user can input various instructions to Printer 10 by operating the operation unit 12. The print execution unit 18 includes a printing mechanism such as an inkjet method or a laser method.
[0016] The Wi-Fi I / F 16 is a wireless I / F for executing Wi-Fi communication according to the Wi-Fi standard. The Wi-Fi standard is a wireless communication standard for executing wireless communication according to, for example, the 802.11 standard of IEEE (abbreviation of The Institute of Electrical and Electronics Engineers, Inc.) and standards conforming thereto (e.g., 802.11a, 11b, 11g, 11n, 11ac, etc.). In particular, the Wi-Fi I / F 16 supports DPP (abbreviation of Device Provisioning Protocol) formulated by the Wi-Fi Alliance. Details of DPP are described in the standard document "Wi-Fi Easy Connect (trademark) Specification Version 2.0" created by the Wi-Fi Alliance.
[0017] Furthermore, the Wi-Fi I / F16 of printer 10G also supports WFD (short for Wi-Fi Direct®), which was established by the Wi-Fi Alliance. The reason for this will be explained later. Details of WFD are described in the "Wi-Fi Direct® Specification Version 1.9" standard document created by the Wi-Fi Alliance. In the following, a Wi-Fi connection established according to WFD will be referred to as a "WFD connection." Note that the Wi-Fi I / F16 of the other printers 10A to 10F may or may not support WFD.
[0018] Printer 10A also includes a display unit 14. The display unit 14 is a display for showing various information. The display unit 14 is a so-called touch panel and also functions as an operation unit 12. In this embodiment, a QR code is displayed on the display unit 14. Note that the other printers 10B to 10G may or may not have a display unit 14.
[0019] Furthermore, each printer 10C to 10E is equipped with a BTI / F20. The BTI / F20 is an interface for performing BT communication. Note that the other printers 10A to 10B and 10F to 10G may or may not be equipped with a BTI / F20.
[0020] Furthermore, each printer 10F to 10G is equipped with NFCI / F22. NFCI / F22 is an interface for performing NFC communication. Note that the other printers 10A to 10E may or may not be equipped with NFCI / F22.
[0021] Here, we will describe the differences between Wi-Fi, Bluetooth, and NFC communication. The communication speeds of each communication are fastest in the following order: Wi-Fi (e.g., maximum speed of 600 Mbps), Bluetooth (e.g., maximum speed of 24 Mbps), and NFC (e.g., maximum speed of 424 kbps). The carrier frequency for each communication is either 2.4 GHz or 5.0 GHz for Wi-Fi, 2.4 GHz for Bluetooth, and 13.56 MHz for NFC. In other words, when the 5.0 GHz band is used as the carrier frequency for Wi-Fi, the carrier frequencies for each communication will differ from those of the others. The maximum distance at which each communication can be performed is fastest in the following order: Wi-Fi (e.g., 100 m), Bluetooth (e.g., approximately several tens of m), and NFC (e.g., approximately 10 cm).
[0022] The control unit 30 comprises a CPU 32 and a memory 34. The CPU 32 performs various processes according to the program 36 stored in the memory 34. The memory 34 is composed of volatile memory, non-volatile memory, etc. The memory 34 also stores its own model name MN. Here, the model name MN indicates the model name when printers 10A to 10G are not distinguished. For example, as shown in Figure 1, printer 10A stores the model name MNA, and printer 10B stores the model name MNB. The same applies to each of the other printers.
[0023] (Configuration of terminal 100) Terminal 100 is a portable terminal device such as a mobile phone (e.g., a smartphone), PDA, or tablet PC. In a modified example, terminal 100 may be a stationary PC, notebook PC, or the like. Terminal 100 comprises an operation unit 112, a display unit 114, a Wi-Fi interface 116, a camera 118, a BTI interface 120, an NFCI interface 122, and a control unit 130. Each unit 112 to 130 is connected to a bus line (symbols omitted).
[0024] The operation unit 112 is an interface for inputting various instructions to the terminal 100. The display unit 114 is a display for displaying various information. The display unit 114 is a so-called touch panel and also functions as the operation unit 112. The camera 118 is a device for photographing objects. In this embodiment, the camera 118 is used to photograph the QR code on the printer 10. The Wi-Fi interface 116 supports DPP and WFD. The BTI / F 120 and NFCI / F 122 are the same as the BTI / F 20 and NFCI / F 22 of the printer 10, respectively.
[0025] The control unit 130 comprises a CPU 132 and a memory 134. The CPU 132 executes various processes according to programs 136 and 138 stored in the memory 134. The memory 134 is composed of volatile memory, non-volatile memory, etc.
[0026] The OS (Operating System) program 136 is a program that enables the basic operation of terminal 100. The application 138 is a program that establishes a Wi-Fi connection between terminal 100 and AP6, and between printer 10 and AP6. Hereafter, the OS program and the application will be referred to as "OS" and "app," respectively. The app 138 is installed on terminal 100 from, for example, an internet server (not shown) provided by the vendor of printer 10 or an internet server (not shown) provided by the vendor of OS 136.
[0027] Furthermore, application 138 can cause OS 136 to execute various processes or cause other applications to execute various processes via OS 136 by supplying instructions to OS 136. Therefore, each process executed by OS 136 or other applications in response to instructions from application 138 can be said to be a process implemented by application 138 (i.e., the CPU 132 functions as the execution unit that executes the said process).
[0028] (Application processing; Figures 3 and 4) Next, referring to Figures 3 and 4, we will explain the process implemented by the CPU 132 of terminal 100 executing application 138. Figures 3 and 4 show the process for establishing a Wi-Fi connection between printer 10 and AP6 according to DPP. Hereafter, the printer for which the Wi-Fi connection is to be established will be referred to as the "target printer". Also, when explaining the process in Figures 3 and 4 below, we will focus on application 138 rather than CPU 132. The process in Figure 3 is triggered by the launch of application 138.
[0029] In S10, application 138 displays selection screen SC1 on display unit 114. Selection screen SC1 includes a model name input area for entering the model name and three marks (i.e., QR code, BT, NFC) indicating three means of acquiring setup information. The mark indicating QR code means that setup information can be acquired by scanning a QR code displayed on the target printer or a QR code attached to the target printer. The mark indicating BT means that setup information can be acquired by performing BT communication with the target printer. The mark indicating NFC means that setup information can be acquired by performing NFC communication with the target printer.
[0030] In S12, app 138 determines whether or not a model name has been entered in the model name input field on the selection screen SC1. If a model name is entered, app 138 determines YES in S12 and proceeds to S14; if a model name is not entered, app 138 determines NO in S12 and proceeds to S20.
[0031] In S14, application 138 displays selection screen SC2 on display unit 114. Selection screen SC2 displays the model name entered in the model name input area. Furthermore, selection screen SC2 includes message M1 indicating the operation that the user should perform to change the status of the target printer (i.e., the printer identified by the entered model name) from DPP non-responsive state to DPP responsive state. DPP non-responsive state is a state in which it is not possible to send an Authentication Response in response to a DPP Authentication Request. Hereafter, Authentication will be referred to as "Auth," and Request and Response will be referred to as "Req" and "Res," respectively.
[0032] The operation to transition the printer 10 from a DPP non-responsive state to a DPP responsive state varies depending on the model of the printer 10. For each of the multiple model names, the application 138 stores an association between the model name and the operation to transition the printer 10 with that model name to the DPP responsive state. When a model name is entered into the selection screen SC1, the application 138 identifies the operation associated with that model name and displays the selection screen SC2, which includes a message M1 indicating the operation, on the display unit 114. Therefore, the user can recognize the operation to transition the printer 10 to the DPP responsive state.
[0033] On the selection screen SC2, only one of three marks indicating the three setup information acquisition means is displayed in a selectable manner. The setup information acquisition means differs depending on the model of the printer 10. For each of the multiple model names, the application 138 stores the association between the model name and the setup information acquisition means that is compatible with the printer 10 having that model name. When a model name is entered on the selection screen SC1, the application 138 identifies one or more setup information acquisition means associated with that model name and displays the selection screen SC2 on the display unit 114 in a manner in which only that one or more setup information acquisition means is selectable. In other words, the application 138 displays the selection screen SC2 on the display unit 114 in a manner in which setup information acquisition means not associated with the entered model name are not selectable (e.g., grayed out). This allows the user to easily recognize the setup information acquisition means corresponding to the target printer. Furthermore, if there are two or more setup information acquisition means associated with the entered model name, the application 138 may display a selection screen SC2 that allows the user to select only one of the two or more setup information acquisition means. For example, the application 138 may store the priority order to present to the user for three setup information acquisition means, and display a selection screen SC2 on the display unit 114 that allows the user to select only the setup information acquisition means with the highest priority among the two or more mentioned above.
[0034] App 138 determines in S20 whether the mark indicating a QR code was selected on the selection screen SC1 or SC2. If the mark indicating a QR code is selected (YES in S20), proceed to S22.
[0035] In S22, application 138 displays confirmation screen SC3 on display unit 114. Confirmation screen SC3 includes a message asking the user whether a QR code has been found on the target printer, as well as a YES button and a NO button. For example, if the target printer does not display a QR code, the user may not be able to find it. By viewing confirmation screen SC3, the user can recognize that they need to find a QR code in order to perform the setup.
[0036] App 138 determines in S24 whether the YES button in confirmation screen SC3 was selected or not. If the YES button is selected (YES in S24), App 138 proceeds to S26; if the NO button is selected (NO in S24), it returns to S10.
[0037] App 138 performs QR code processing in S26. QR code processing includes displaying a screen prompting the user to scan the QR code.
[0038] App 138 obtains setup information in S28. Specifically, App 138 decodes the QR code captured by camera 118 to obtain setup information.
[0039] In S30, app 138 determines whether the BT mark was selected on selection screen SC1 or SC2. If the BT mark is selected (YES in S30), proceed to S32.
[0040] In S32, application 138 displays confirmation screen SC4 on display unit 114. Confirmation screen SC4 includes a message asking the user whether or not to perform setup (i.e., connecting the target printer to AP6), and includes a YES button and a NO button. Therefore, the user can perform setup by selecting the YES button if they wish to do so.
[0041] App 138 determines in S34 whether the YES button on the confirmation screen SC4 was selected or not. If the YES button is selected (YES in S34), App 138 proceeds to S36; if the NO button is selected (NO in S34), it returns to S10.
[0042] App 138 performs BT processing in S36. BT processing includes BT communication to obtain setup information.
[0043] In S38, application 138 determines whether or not setup information has been obtained. If setup information is obtained (YES in S38), application 138 proceeds to the process shown in Figure 4; otherwise, it returns to S10.
[0044] App 138 determines in S40 whether the NFC mark was selected on selection screen SC1 or SC2. If the NFC mark is selected (YES in S40), proceed to S42.
[0045] In S42, application 138 displays confirmation screen SC5 on the display unit 114. Confirmation screen SC5 includes a message asking the user whether or not the NFC mark N1 (i.e., the location where terminal 100 should be brought close to establish an NFC connection, see Figure 1) has been found on the target printer, as well as a YES button and a NO button. For example, if the target printer does not have NFCI / F, the user will not be able to find the NFC mark N1. By looking at confirmation screen SC5, the user can recognize that they need to find the NFC mark N1 in order to perform the setup.
[0046] App 138 determines in S44 whether the YES button on the confirmation screen SC5 was selected or not. If the YES button is selected (YES in S44), App 138 proceeds to S46; otherwise, it returns to S10.
[0047] App 138 performs NFC processing on S46. As will be explained in more detail later, NFC processing includes NFC communication to obtain setup information.
[0048] In S48, application 138 determines whether or not setup information has been obtained. If setup information is obtained (YES in S48), application 138 proceeds to the process shown in Figure 4; otherwise, it returns to S10.
[0049] (Continuation of Figure 3; Figure 4) App 138 determines in S52 of Figure 4 whether a DPP migration operation is required. The setup information obtained in S28, S38, or S48 of Figure 3 includes DPP migration operation information indicating either "Required" (indicating a DPP migration operation is required) or "Not Required" (indicating a DPP migration operation is not required). If the DPP migration operation information indicates "Required", App 138 determines YES in S52 and proceeds to S54. If the DPP migration operation information indicates "Not Required", App 138 determines NO in S52 and proceeds to S80. If the DPP migration operation information indicates "Required", the setup information also includes the URL of a web page (abbreviation for Uniform Resource Locator, hereinafter referred to as "operation procedure URL") that shows a specific method for transitioning to the DPP response state. In this embodiment, the specific method is either "execution of migration operation", which is directly operating the target printer, or "sending of migration instruction", which is sending a migration instruction from terminal 100 to the target printer. In the modified example, the setup information may include a screen ID instead of the operation procedure URL. The screen ID is information that identifies one of several screens that the application 138 has pre-stored. The screen ID included in the setup information may indicate either a screen ID that identifies the screen prompting "execute the migration operation" or a screen ID that identifies the screen prompting "send the migration instruction". In other words, the information included when the DPP migration operation information indicates "required" is not limited to a URL, but may be any information that indicates a specific method for transitioning to the DPP response state.
[0050] In S54, app 138 determines whether the operation procedure URL is the first URL of the web page indicating "Execute migration operation" or the second URL of the web page indicating "Send migration instruction". If the operation procedure URL is the first URL, app 138 proceeds to S60; if the operation procedure URL is the second URL, it proceeds to S70.
[0051] In S60, application 138 accesses the first URL, causing the notification screen SC6 downloaded from the first URL to be displayed on the display unit 114. The notification screen SC6 includes a message prompting the user to select the OK button after performing a DPP migration operation on the target printer, and an OK button. In this way, the user can understand the operation they should perform by looking at the notification screen SC6.
[0052] App 138 monitors S62 to see if the OK button in the notification screen SC6 is selected. If the OK button is selected (YES in S62), App 138 proceeds to S80.
[0053] In S70, application 138 accesses a second URL, which causes notification screen SC7, downloaded from the second URL, to be displayed on the display unit 114. Notification screen SC7 includes a message asking the user whether or not to send a DPP transition instruction to the target printer, as well as a YES button and a NO button. Therefore, by looking at notification screen SC6, the user can understand the operation they should perform.
[0054] In S72, app 138 determines whether the YES button in notification screen SC7 was selected. If the YES button is selected (YES in S72), app 138 proceeds to S74. If the NO button is selected (NO in S72), app 138 terminates the process shown in Figure 4 without executing the processes from S74 onwards.
[0055] App 138 sends a DPP transition instruction to the target printer at S74. The DPP transition instruction is a command to change the target printer's state from a DPP non-responsive state to a DPP responsive state. In this case, the user does not need to directly operate the target printer, thus improving user convenience.
[0056] App 138 initiates the DPP process on S80. Specifically, App 138 first sends an Auth Request to the target printer using the public key included in the acquired setup information. As a result, DPP Auth, Configuration (hereinafter referred to as "Config"), and other communications are performed between terminal 100 and the target printer. If the DPP process is successful, a Wi-Fi connection is established between the target printer and AP6.
[0057] (Case A1; Figure 5) Next, with reference to Figures 5 to 14, we will explain specific cases realized by the processes in Figures 3 and 4. First, with reference to Figure 5, we will explain Case A1. Case A1 is a case in which DPP processing is performed between terminal 100 and printer 10A. In the initial state of Figure 5, printer 10A stores the public key PKA and the private key corresponding to the public key PKA (not shown). In Case A1, printer 10A does not store the DPP Configuration Object (hereinafter referred to as "CO"), so when the power is turned on, it automatically transitions to the DPP response state.
[0058] Although not shown in the diagram, in the initial state of Figure 5, DPP processing is being performed between terminal 100 and AP6, and a Wi-Fi connection has been established between terminal 100 and AP6. In the following explanation of Figure 5, for ease of understanding, the operations performed by the CPU of each device (e.g., CPU 32, 132, etc.) will be described from the perspective of each device (e.g., printer 10A, terminal 100, etc.) rather than from the perspective of the CPU. The same applies to the explanations of Figures 6 to 14. In particular, for processing performed by application 138 on terminal 100, application 138 may be described as the main processing entity instead of terminal 100.
[0059] In Figure 5, at T100, when the user performs the operation to turn on the power of printer 10A, at T102, the power of printer 10A is turned on. In this case, at T104, printer 10A automatically transitions from a DPP non-responsive state to a DPP responsive state, generates a QR code QRA at T106, and displays the QR code QRA on the display unit 14 at T108. The QR code QRA is a code image obtained by encoding the setup information (i.e., the public key PKA and DPP transition operation information "not required").
[0060] Terminal 100 accepts an operation from the user to launch application 138 at T110. As a result, when application 138 is launched (trigger for the process in Figure 3), application 138 displays the selection screen SC1 on the display unit 114 at T112 (S10 in Figure 3).
[0061] In T114, when application 138 receives a selection from the user for the mark indicating the QR code in the selection screen SC1 (YES in S20), it displays the confirmation screen SC3 on the display unit 114 in T116 (S22). In this case, since the QR code QRA is displayed on the display unit 14 of printer 10A (see T108), application 138 receives a selection from the user for the YES button in the confirmation screen SC3 in T118 (YES in S24). In this case, application 138 displays the notification screen SC8 on the display unit 114 in T119. The notification screen SC8 includes a message prompting the user to take a picture of the QR code. As a result, the user is able to recognize that they should take a picture of the QR code.
[0062] After the user sees the notification screen SC8, the application 138 accepts an operation to launch the camera 118, and then in T120, accepts an operation to take a picture of the QR code QRA displayed on the printer 10A with the camera 118 (S26). In this case, the application 138 obtains setup information by decoding the captured QR code QRA (S28), and in T122, stores the obtained setup information in memory 134. The process in T120 corresponds to DPP's Bootstrapping.
[0063] When application 138 obtains setup information at T120, it indicates that the DPP migration operation information included in the setup information is "unnecessary" (NO at S52 in Figure 4), so at T130, it sends an Auth Request using the public key PKA1 to printer 10A via Wi-Fi I / F116 (S80).
[0064] The Auth Req is a signal requesting authentication from the sending terminal 100. Specifically, terminal 100 first generates a shared key using terminal 100's private key (not shown) and printer 10A's public key PKA1, and then generates encrypted data by encrypting a random value using the shared key. Then, terminal 100 sends the Auth Req to printer 10A, which includes terminal 100's public key (not shown), the encrypted data, and terminal 100's Capability. Terminal 100's Capability includes a value indicating that it can only operate as a DPP Configurator.
[0065] When printer 10A receives an Auth Request from terminal 100 via Wi-Fi I / F 16 at T130, it performs authentication of the encrypted data contained in the Auth Request. Specifically, printer 10A generates a shared key using terminal 100's public key and printer 10A's private key contained in the Auth Request, and uses the shared key to decrypt the encrypted data. If the decryption of the encrypted data is successful, printer 10A determines that authentication has been successful and proceeds with processing from T132 onwards.
[0066] At T132, printer 10A transitions from the DPP response state to the DPP non-response state. This is because the authentication of the encrypted data has been successful, and there is no need to maintain the DPP response state. The DPP response state is a state where the processing load on printer 10A is higher compared to the DPP non-response state. By transitioning from the DPP response state to the DPP non-response state, printer 10A can reduce its processing load.
[0067] Furthermore, printer 10A sends an Auth Res, including printer 10A's Capability, to terminal 100 via Wi-Fi I / F 16 at T134. Printer 10A's Capability includes a value indicating that it can operate only as a DPP Enrollee.
[0068] When terminal 100 receives an Auth Res from printer 10A at T134, it determines that there is no conflict between the Capability of printer 10A (i.e., Enrollee) included in the Auth Res and terminal 100's own Capability (i.e., Configurator). Then, at T135, terminal 100 sends an Auth Confirm to AP6 via Wi-Fi I / F 116. The Auth Confirm contains information indicating that terminal 100 is operating as a Configurator and printer 10A is operating as an Enrollee. As a result, at T136, terminal 100 decides to operate as a Configurator. The Configurator is a device that is responsible for sending a CO to the Enrollee.
[0069] Furthermore, in T138, it is decided that printer 10A will act as the Enrollee. The Enrollee is a device that receives CO from the Configurator. The processing in T130 and T134-T138 corresponds to DPP authentication.
[0070] Printer 10A sends a Config Req to terminal 100 via Wi-Fi I / F 16 at T140. The Config Req is a signal requesting the transmission of a CO.
[0071] When terminal 100 receives a Config Request from printer 10A at T140, it generates a printer CO. Specifically, terminal 100 first generates a printer Signed Connector (hereinafter referred to as "SC"), which is information that should be used by printer 10A to establish a Wi-Fi connection. The printer SC includes, for example, a group ID, which is an identifier that identifies the wireless network. Then, terminal 100 generates a printer CO including the printer SC and sends a Config Request including the printer CO to printer 10A via Wi-Fi I / F 116 at T142.
[0072] When printer 10A receives a Config Res from terminal 100 via Wi-Fi I / F 16 at T142, it sends the Config Result to terminal 100 via Wi-Fi I / F 16 at T144. The Config Result contains information indicating that the configuration was successful. The processing from T140 to T144 corresponds to the DPP configuration.
[0073] Printer 10A, at T146, sends a Discovery Request, including the printer SC, to AP6 via Wi-Fi I / F16. The Discovery Request is a signal requesting the other party to send the SC.
[0074] When AP6 receives a Discovery Request from printer 10A at T146, it uses the AP's SC to authenticate the printer SC included in the Discovery Request. If the authentication of the printer SC is successful, AP6 generates a connection key. Then, at T148, AP sends a Discovery Request containing the AP's SC to printer 10A.
[0075] When printer 10A receives Discovery Res from AP6 at T148, it uses the printer's SC to authenticate the AP SC included in Discovery Res. If the authentication of the AP SC is successful, printer 10A generates a connection key. The connection key generated here is the same as the connection key generated by AP6. In other words, the connection key is shared between printer 10A and AP6.
[0076] Next, printer 10A uses the connection key to perform a 4-way handshake communication with AP6. As a result, a Wi-Fi connection is established between printer 10A and AP6 at T150. Since a Wi-Fi connection has also been established between terminal 100 and AP6, terminal 100 and printer 10A can communicate with each other via AP6. The processing from T146 to T150 corresponds to Network Access in DPP.
[0077] Although not shown in the diagram, when printer 10A establishes a Wi-Fi connection with AP6, it stores the printer CO in memory 34. From this point onward, printer 10A uses "Required" instead of "Not Required" as the DPP transition operation information. When the printer CO is stored, a Wi-Fi connection is established between printer 10A and the device (AP6 in this case). In this situation, if the DPP transition operation information is "Not Required" (i.e., if printer 10A automatically transitions to the DPP response state when its power is turned on), there is a risk that printer 10A may perform DPP processing in a situation unintended by the user. In this case, printer 10A may delete the stored printer CO upon receiving a new printer CO, potentially disconnecting the Wi-Fi connection with AP6. To suppress such an event, when a Wi-Fi connection is established between printer 10A and AP6, that is, when printer 10A stores the printer CO, the DPP transition operation information is changed from "Not Required" to "Required".
[0078] Furthermore, once a Wi-Fi connection is established with AP6, printer 10A sends a Result message containing the information "Success" indicating that the Wi-Fi connection has been established, via Wi-Fi I / F16, to terminal 100 using T152.
[0079] Terminal 100 receives a Result, including success, from printer 10A via Wi-Fi I / F 116 at T152.
[0080] As described above, the printer 10A can establish a Wi-Fi connection with AP6. To this end, the printer 10A can receive print data representing the image to be printed from terminal 100 via AP6 and execute printing of the image represented by said print data.
[0081] (Case A2; Figure 6) Next, we will explain Case A2 with reference to Figure 6. Case A2 is a case in which DPP processing is performed between terminal 100 and printer 10A. In particular, in Case A2, printer 10A does not automatically transition to the DPP response state when the power is turned on because it has already stored CO.
[0082] In Figure 6, at T200, when the user performs the operation to turn on the power of printer 10A, at T202, the power of printer 10A is turned on. In this case, since printer 10A has already memorized CO, printer 10A does not automatically transition to the DPP response state.
[0083] The processing at T210 to T216 is the same as the processing at T110 to T116 in Figure 5. In this case, since the printer 10A has not entered the DPP response state, the QR code is not displayed on the printer 10A. Therefore, at T218, the application 138 accepts the user's selection of the NO button in the confirmation screen SC3 (NO at S24 in Figure 3). In this case, at T230, the application 138 displays the selection screen SC1 again on the display unit 114 (S10). Note that the selection screen SC1 displayed at T230 may also include a message prompting the user to enter the model name in addition to the content of the selection screen displayed at T212.
[0084] In step T232, application 138 accepts the input of the model name MNA in the model name input area (see Figure 3) within the selection screen SC1 (YES in S12). In this case, in step T234, application 138 displays the selection screen SC2 on the display unit 114 (S14). In this way, application 138 can present the user with the actions they should take if the QR code cannot be found, thereby improving user convenience.
[0085] As shown in Figure 3, the selection screen SC2 includes message M1. When printer 10A receives a DPP transition operation from the user who has seen message M1 at T240, it transitions to the DPP response state at T244, generates a QR code QRA at T246, and displays the QR code QRA on the display unit 14 at T248. In the initial state shown in Figure 6, the DPP transition operation information indicates "Required," but by the time the QR code QRA is displayed, printer 10A has already transitioned to the DPP response state, so the DPP transition operation information indicates "Not Required." The processing at T250~T262 is the same as the processing at T114~T122 in Figure 5. Subsequently, the same processing as at T130~T152 in Figure 5 is executed, and a Wi-Fi connection is established between printer 10A and AP6.
[0086] (Case B; Figure 7) Next, we will explain Case B with reference to Figure 7. Case B is a case in which DPP processing is performed between terminal 100 and printer 10B. Printer 10B stores a public key PKB and a private key (not shown) corresponding to the public key PKB. Printer 10B has a housing 50 to which a QR code QRB is attached (see Figure 1). The QR code QRB is information obtained by encoding setup information (i.e., a public key PKB, DPP migration operation information "required", and an operation procedure URL that shows a first URL which is the URL of a web page indicating the execution of the migration operation). The processing of T300 and T302 is the same as the processing of T100 and T102 in Figure 5. Also, the processing of T320 to T332 is the same as the processing of T110 to T122 in Figure 5, except that the QR code QRB is photographed and the setup information is different.
[0087] App 138 indicates that the DPP migration operation information included in the acquired setup information is "required" (YES in S52 of Figure 4), and the operation procedure URL is the first URL ("first URL" in S54), so T334 displays the notification screen SC6 on the display unit 114 (S60).
[0088] When printer 10B receives a DPP transition operation from a user who has viewed the notification screen SC6 at T340, it transitions to the DPP response state at T342.
[0089] App 138 accepts the selection of the OK button in the notification screen SC6 at T344 (YES at S62). Subsequently, the same process as T130~T152 in Figure 5 is executed, except that the public key PKB is used and the printer 10B is the main processor, and a Wi-Fi connection is established between printer 10B and AP6.
[0090] (Case C1; Figure 8) Next, we will explain Case C1 with reference to Figure 8. Case C1 is a case in which DPP processing is performed between terminal 100 and printer 10C. In the initial state of Case C1, printer 10C stores the public key PKC and the private key (not shown) corresponding to the public key PKC. In Case C1, because printer 10C does not store the CO, it automatically transitions to the DPP response state when the power is turned on. In Case C1, first, the same processing as T100~T104 in Figure 5 is performed.
[0091] Printer 10C supplies setup information to BTI / F20 in T412. In this case, the setup information includes the public key PKC and DPP migration operation information "not required".
[0092] Printer 10C repeatedly transmits BLE_ADV_EXT, an advertisement signal containing setup information. At stage T414, the advertisement signal is not received by terminal 100.
[0093] Subsequently, the same processes as those shown in T110 and T112 in Figure 5 are executed, and the selection screen SC1 is displayed (S10 in Figure 3). At T424, when application 138 receives a selection from the user for the mark indicating BT in the selection screen SC1 (YES at S30), at T426, it displays the confirmation screen SC4 on the display unit 114 (S32). Subsequently, at T428, when application 138 receives a selection of the YES button in the confirmation screen SC4 (YES at S34), it changes the state of the BTI / F120 of terminal 100 from a state where it cannot receive the advertised signal to a state where it can receive the advertised signal (S36). As a result, at T430, application 138 receives the advertised signal from printer 10C and obtains setup information (YES at S38), and at T432, it stores the obtained setup information in memory 134. Subsequently, the same process as T130-T152 in Figure 5 is executed, except that a public key PKC is used and the printer 10C is the main processor, and a Wi-Fi connection is established between the printer 10C and AP6. In particular, at T132, as shown in Figure 8, when the printer 10C enters a DPP non-responding state, the printer 10C stops transmitting the advertise signal.
[0094] (Case C2; Figure 8) Next, we will explain Case C2 with reference to Figure 8. Case C2 is a case in which DPP processing is performed between terminal 100 and printer 10C. In Case C2, printer 10C does not automatically transition to the DPP response state when the power is turned on because it has already stored CO. In Case C2, first, the same processing as T200~T212 in Figure 6 is performed. The processing of T444~T448 is the same as the processing of T424~T428.
[0095] In this case, printer 10C has not entered the DPP response state and therefore does not send an advertisement signal. Consequently, application 138 does not receive an advertisement signal from printer 10C. If application 138 does not receive an advertisement signal for a predetermined time (NO in S38), T450 displays the selection screen SC1 again on the display unit 114 (S10).
[0096] In T452, application 138 accepts the input of the model name MNC in the model name input area (see Figure 3) within the selection screen SC1 (YES in S12). In this case, in T454, application 138 displays the selection screen SC2 on the display unit 114 (S14). In this way, if the advertised signal is not received (i.e., if the public key PKC is not received), application 138 can present the user with the operation they should perform, thereby improving user convenience.
[0097] As shown in Figure 3, the selection screen SC2 includes message M1. When printer 10C receives a DPP transition operation from the user who saw message M1 at T460, it transitions to the DPP response state at T462 and supplies setup information to BTI / F20 at T464. In the initial state of case C2, the DPP transition operation information indicates "Required," but by the time the setup information is supplied to BTI / F20, printer 10C has already transitioned to the DPP response state, so the DPP transition operation information indicates "Not Required." The processing at T466 is the same as that at T414. The processing at T470 to T478 is the same as that at T424 to T432. Subsequently, the same processing as at T130 to T152 in Figure 5 is executed, except that a public key PKC is used and printer 10C is the main processor, and a Wi-Fi connection is established between printer 10C and AP6.
[0098] (Case D1; Figure 9) Next, we will explain Case D1 with reference to Figure 9. Case D1 is a case in which DPP processing is performed between terminal 100 and printer 10D. In the initial state of Case D1, printer 10D stores the public key PKD and the private key (not shown) corresponding to the public key PKD. In Case D1, because printer 10D does not store the CO, it automatically transitions to the DPP response state when the power is turned on. The processing of T500 to T504 is the same as the processing of T100 to T104 in Figure 5. Also, the processing of T506 is the same as the processing of T412 in Figure 8, except that the setup information is different (specifically, the public key PKD is used).
[0099] Printer 10D repeatedly transmits the advertisement signal BLE_ADV_IND. This advertisement signal does not contain setup information. At stage T508, the advertisement signal is not received by terminal 100.
[0100] The processing at T510 and T512 is the same as at T110 and T112 in Figure 5. At T514, when application 138 receives a selection from the user for the mark indicating BT in the selection screen SC1 (YES at S30), at T515, it displays the confirmation screen SC4 on the display unit 114 (S32). Subsequently, at T516, when application 138 receives a selection of the YES button in the confirmation screen SC4 (YES at S34), it changes the state of the BTI / F120 of terminal 100 from a state where it cannot receive the advertised signal to a state where it can receive the advertised signal (S36). As a result, at T518, application 138 receives the advertised signal from printer 10D and at T520, establishes a one-to-one connection via BT (i.e., a GATT connection) (S36).
[0101] Subsequently, application 138, using the GATT connection via BTI / F120, sends a setup information request to printer 10D on T522.
[0102] When printer 10D receives a setup information request from terminal 100 via T522, T524 transmits the setup information to terminal 100 via BTI / F20 using a GATT connection.
[0103] When application 138 receives setup information from printer 10D at T524 (YES at S38), it stores the received setup information in memory 134. Subsequently, the same process as T130-T152 in Figure 5 is executed, except that the public key PKD is used and the printer 10D is the main processor, and a Wi-Fi connection is established between printer 10D and AP6. In particular, at T132, as shown in Figure 9, when printer 10D enters a DPP non-response state, it stops transmitting the advertise signal.
[0104] (Case D2; Figure 10) Next, we will explain Case D2 with reference to Figure 10. Case D2 is a case in which DPP processing is performed between terminal 100 and printer 10D. In Case D2, printer 10D does not automatically transition to the DPP response state when the power is turned on because it has already stored CO. The processing of T530 and T532 is the same as the processing of T100 and T102 in Figure 5. The processing of T534 is the same as the processing of T508 in Figure 9.
[0105] The processing at T540 to T552 is the same as the processing at T510 to T522 in Figure 9. In this case, the printer 10D has not entered the DPP response state and therefore has not supplied setup information to the BTI / F20. Consequently, the application 138 does not receive setup information from the printer 10D (NO at S38 in Figure 3). In this case, at T560, the application 138 displays the selection screen SC1 again on the display unit 114 (S10).
[0106] In step T562, application 138 accepts the input of the model name MND in the model name input area (see Figure 3) within the selection screen SC1 (YES in S12). In this case, in step T564, application 138 displays the selection screen SC2 on the display unit 114 (S14). The selection screen SC2 displayed here includes a message M2 indicating the operation that the user should perform to change the state of the printer 10D from a DPP non-responsive state to a DPP responsive state. In addition, in the selection screen SC2 displayed here, the marks indicating QR codes and NFC are grayed out, and only the mark indicating BT is displayed in a selectable manner.
[0107] When application 138 receives a migration instruction from a user who has seen message M2 in the selection screen SC2 on T566, T570 sends a DPP migration instruction to printer 10D via BTI / F120 using a GATT connection.
[0108] When printer 10D receives a DPP transition instruction from terminal 100 at T570, it transitions to the DPP response state at T572 and supplies setup information to BTI / F20 at T574. In the initial state of case D2, the DPP transition operation information indicates "required," but by the time the setup information is supplied to BTI / F20, printer 10D has already transitioned to the DPP response state, so the DPP transition operation information indicates "not required." The processing at T576-T586 is the same as the processing at T514-T516 and T522-T526 in Figure 9. Subsequently, the same processing as at T130-T152 in Figure 5 is executed, except that the public key PKD is used and printer 10D is the main processor, and a Wi-Fi connection is established between printer 10D and AP6. In particular, at T132, as shown in Figure 10, when printer 10D transitions to the DPP non-response state, it stops transmitting the advertise signal.
[0109] (Case E; Figure 11) Next, Case E will be explained with reference to Figure 11. Case E is a case in which DPP processing is performed between terminal 100 and printer 10E. In the initial state of Case E, printer 10E stores a public key PKE and a private key (not shown) corresponding to the public key PKE. In Case E, printer 10D does not store CO, but does not automatically transition to the DPP response state when the power is turned on. The processing of T600 and T602 is the same as the processing of T100 and T102 in Figure 5. Also, the processing of T606 and T608 is the same as the processing of T506 and T508 in Figure 9, except that the setup information is different. The setup information includes a public key PKE, DPP transition operation information "Required", and an operation procedure URL that indicates a second URL which is the URL of a web page indicating the transmission of the transition instruction.
[0110] The processing at T610 to T626 is the same as the processing at T510 to T526 in Figure 9, except that the setup information is different. When application 138 obtains the setup information (YES at S38 in Figure 3), the DPP migration operation information included in the obtained setup information is indicated as "required" (YES at S52 in Figure 4), and the operation procedure URL is the second URL ("second URL" at S54), so at T630, the notification screen SC7 is displayed on the display unit 114 (S70).
[0111] When application 138 receives a selection of the YES button in notification screen SC7 at T632 (YES at S72), it sends a DPP transition instruction to printer 10E via BTI / F120 using the GATT connection at T634 (S74).
[0112] When printer 10E receives a DPP transition instruction from terminal 100 at T634, it transitions to the DPP response state at T640. Subsequently, the same process as T130 to T152 in Figure 5 is executed, except that a public key PKE is used and printer 10E is the main processor, and a Wi-Fi connection is established between printer 10E and AP6.
[0113] (Case F1; Figure 12) Next, we will explain Case F1 with reference to Figure 12. Case F1 is a case in which DPP processing is performed between terminal 100 and printer 10F. In the initial state of Case F1, printer 10F stores the public key PKF and the private key (not shown) corresponding to the public key PKF. In Case F1, because printer 10F does not store the CO, it automatically transitions to the DPP response state when the power is turned on. In Case F1, first, the same processing as T100~T104 in Figure 5 is performed.
[0114] Printer 10F supplies setup information to NFCI / F22 in T712 and changes the state of NFCI / F22 from a state where NFC communication is not possible to a state where NFC communication is possible. In this case, the setup information includes the public key PKF and the DPP migration operation information "not required".
[0115] Subsequently, the same process as in T110 and T112 in Figure 5 is performed, and the selection screen SC1 is displayed (S10 in Figure 3). In T714, when application 138 receives a selection from the user for the NFC mark in the selection screen SC1 (YES in S40), it displays the confirmation screen SC5 on the display unit 114 in T716. Then, in T718, when application 138 receives a selection of the YES button in the confirmation screen SC5 (YES in S44), it changes the state of the NFCI / F122 of terminal 100 from a state where NFC communication is not possible to a state where NFC communication is possible (S46). Furthermore, in T719, application 138 displays the notification screen SC9 on the display unit 114. The notification screen SC9 includes a message prompting the user to bring terminal 100 closer to printer 10F. As a result, the user can recognize that terminal 100 should be brought closer to printer 10F.
[0116] When the user of terminal 100 sees the notification screen SC9, at T720, they bring terminal 100 close to printer 10F to establish an NFC connection between terminal 100 and printer 10F. Then, at T722, terminal 100 receives setup information from printer 10F via NFCI / F122 using the NFC connection (YES at S48), and at T724, the received setup information is stored in memory 134. Subsequently, the same process as T130~T152 in Figure 5 is executed, except that a public key PKF is used and the printer 10F is the main processor, and a Wi-Fi connection is established between printer 10F and AP6. In particular, at T132, as shown in Figure 12, when printer 10F enters a DPP non-responding state, the state of NFCI / F22 is changed from a state where NFC communication is possible to a state where NFC communication is not possible.
[0117] (Case F2; Figure 12) Next, we will explain Case F2 with reference to Figure 12. Case F2 is a case in which DPP processing is performed between terminal 100 and printer 10F. In Case F2, printer 10F does not automatically transition to the DPP response state when the power is turned on because it has already stored CO. In Case F2, first, the same processing as T200~T212 in Figure 6 is performed. The processing of T734~T740 is the same as the processing of T714~T720.
[0118] In this case, since printer 10F has not entered the DPP response state, setup information is not supplied to printer 10F's NFCI / F22. Therefore, application 138 does not receive setup information from printer 10F. If setup information is not obtained (NO in S48), application 138 displays the selection screen SC1 again on the display unit 114 in T750 (S10).
[0119] In T752, application 138 accepts the input of the model name MNF in the model name input area (see Figure 3) within the selection screen SC1 (YES in S12). In this case, in T754, application 138 displays the selection screen SC2 on the display unit 114 (S14).
[0120] As shown in Figure 3, the selection screen SC2 includes message M1. When printer 10F receives a DPP transition operation from the user who saw message M1 at T760, it transitions to the DPP response state at T762 and supplies setup information to NFCI / F22 at T764. In the initial state of case F2, the DPP transition operation information indicates "Required," but by the time the setup information is supplied to NFCI / F22, printer 10F has already transitioned to the DPP response state, so the DPP transition operation information indicates "Not Required." The processing at T770~T778 is the same as the processing at T714~T724. Subsequently, the same processing as at T130~T152 in Figure 5 is executed, except that a public key PKF is used and printer 10F is the main processor, and a Wi-Fi connection is established between printer 10F and AP6.
[0121] (Case G1; Figure 13) Next, we will explain Case G1 with reference to Figure 13. Case G1 is a case in which DPP processing is performed between terminal 100 and printer 10G. In the initial state of Case G1, printer 10G stores the public key PKG and the private key (not shown) corresponding to the public key PKG. In Case G1, because printer 10G does not store the CO, it automatically transitions to the DPP response state when the power is turned on. The processing of T800~T804 is the same as the processing of T100~T104 in Figure 5.
[0122] Printer 10G supplies WFD connection information to NFCI / F22 in T806. WFD connection information is information used to establish a WFD connection between printer 10G and terminal 100 (for example, the SSID (Service Set Identifier) of the wireless network on which printer 10G operates as the WFD master station).
[0123] The processing of T810 and T812 is the same as that of T110 and T112 in Figure 5. Also, the processing of T814 to T822 is the same as that of T714 to T720 in Figure 12.
[0124] In application 138, at T824, WFD connection information is received from printer 10G via NFCI / F122 using NFC connection, and at T826, a WFD connection is established with printer 10G using the received WFD connection information (S46).
[0125] App 138, on the T830, uses the WFD connection via Wi-Fi I / F 116 to send a setup information request to printer 10G.
[0126] When printer 10G receives a setup information request from terminal 100 at T830, T831 supplies the setup information to Wi-Fi I / F16, and T832 transmits the setup information to terminal 100 via Wi-Fi I / F16 using a WFD connection. In this case, the setup information includes a public key PKG and DPP migration operation information "not required".
[0127] When application 138 receives setup information from printer 10G (YES in S48), T834 stores the setup information. Subsequently, T836 disconnects the WFD connection between terminal 100 and printer 10G.
[0128] Subsequently, the same process as T130-T152 in Figure 5 is executed, except that a public key PKG is used and the printer 10G is the main processor, and a Wi-Fi connection is established between printer 10G and AP6. In particular, in T132, as shown in Figure 13, when printer 10F enters a DPP non-responding state, it changes the state of NFCI / F22 from a state where NFC communication is possible to a state where NFC communication is not possible.
[0129] (Case G2; Figure 14) Next, we will explain Case G2 with reference to Figure 14. Case G2 is a case in which DPP processing is performed between terminal 100 and printer 10G. In Case G2, printer 10G does not automatically transition to the DPP response state when the power is turned on because it has already stored CO. The processing of T900 and T902 is the same as the processing of T100 and T102 in Figure 5. Also, the processing of T910 to T922 is the same as the processing of T810 to T822 in Figure 13.
[0130] In this case, neither setup information nor WFD connection information is supplied to the NFCI / F22 of printer 10G. For this reason, even when terminal 100 is touched to printer 10G, application 138 does not acquire either setup information or WFD connection information (NO in S48 of Figure 3). In this case, application 138 displays the selection screen SC1 again on the display unit 114 of T950 (S10).
[0131] In step 952, application 138 accepts the input of the model name MNG in the model name input area (see Figure 3) within the selection screen SC1 (YES in S12). In this case, in step 954, application 138 displays the selection screen SC2 on the display unit 114 (S14).
[0132] As shown in Figure 3, the selection screen SC2 includes message M1. When printer 10G receives a DPP transition operation from the user who saw message M1 at T960, it transitions to the DPP response state at T962, and supplies WFD connection information to NFCI / F22 at T964. The processing at T970~T986 is the same as the processing at T814~T836 in Figure 13. Subsequently, the same processing as at T130~T152 in Figure 5 is executed, except that a public key PKG is used and the printer 10G is the main processor, and a Wi-Fi connection is established between printer 10G and AP6.
[0133] (Effects of this embodiment) According to the above configuration, terminal 100 displays a selection screen SC1 showing three acquisition methods (specifically QR code, NFC, and BT) for obtaining the public key of the printer (e.g., 10A) (S10 in Figure 3), and displays a notification screen (e.g., SC8 (see Figure 5)) corresponding to the selected acquisition method (e.g., QR code) (e.g., S26). As a result, the printer's public key is obtained by the selected acquisition method (e.g., S28), and various communications such as sending an authentication request are performed (S80 in Figure 4). As a result, a Wi-Fi connection can be properly established between the printer and AP6.
[0134] (Correspondence) Terminal 100, printer 10 (i.e., printers 10A to 10K), and AP6 are examples of the "first communication device," "second communication device," and "external device," respectively. Application 138 is an example of a "computer program." A public key (e.g., PKA) is an example of a "bootstrapping key (and specific bootstrapping key)." The three means of obtaining public keys—QR code, BT, and NFC—are examples of "M means of obtaining." Auth Req, Auth Res, and printer CO are examples of "authentication request," "authentication response," and "connection information," respectively. BT communication and NFC communication are examples of "first communication" and "second communication," respectively. Selection screen SC1 is an example of "first means selection information (and model name reception information)." Notification screen SC8 (see Figure 5), confirmation screen SC4 (see Figure 3), and notification screen SC9 (see Figure 12) are examples of "support information (and specific support information)." In particular, the message "Please take a picture of the QR code" in notification screen SC8, the message "Do you want to perform the setup?" in confirmation screen SC4, and the message "Please bring the device close to the printer's NFC mark" in notification screen SC9 are examples of the "first message," "second message," and "third message," respectively. Selection screen SC2 is an example of "second method selection information (and first to third method information)." In particular, selection screen SC2 displayed at T234 in Figure 6 and selection screen SC2 displayed at T454 in Figure 9 are examples of "second method information" and "third method information," respectively. Confirmation screen SC3 and confirmation screen SC5 are examples of "first confirmation information" and "second confirmation information," respectively. Notification screen SC6 and notification screen SC7 are examples of "fourth method information" and "third confirmation information," respectively. DPP migration operation information is an example of "migration information." DPP transition operation (e.g., T240 in Figure 6) and DPP transition instruction (e.g., T570 in Figure 10) are examples of "predetermined operation" and "transition instruction," respectively. An operation indicated by message M1 or M2 (i.e., an operation to transition from a DPP non-response state to a DPP response state) is an example of a "first (to third) operation."
[0135] The process at S10 in Figure 3 is an example of a process executed by the "first display control unit (and the third display control unit)". The process at S14 in Figure 3 is an example of a process executed by the "fourth display control unit (and the sixth display control unit, and the seventh display control unit)". The process at S22 in Figure 3 is an example of a process executed by the "fifth display control unit". The processes at S26, S32, and S46 in Figure 3 are examples of processes executed by the "second display control unit". The processes at S28, S38, and S48 in Figure 3 are examples of processes executed by the "acquisition unit". The process at S42 in Figure 3 is an example of a process executed by the "eighth display control unit". The processes at S60, S70, and S74 in Figure 4 are examples of processes executed by the "ninth display control unit", "tenth display control unit", and "predetermined instruction transmission unit", respectively. The processes at T130, T134, and T142 in Figure 5 are examples of processes executed by the "authentication request transmission unit", "authentication response reception unit", and "connection information communication unit", respectively.
[0136] The specific examples of the technology disclosed herein have been described in detail above, but these are merely illustrative and do not limit the scope of the claims. The technology described in the claims includes various modifications and changes to the specific examples illustrated above. Modifications of the above embodiments are listed below.
[0137] (Modification 1) In the above embodiment, for example, DPP processing was performed between terminal 100 and printer 10A to establish a Wi-Fi connection between printer 10A and AP6. In modification, DPP processing may be performed between terminal 100 and printer 10A to establish a Wi-Fi connection between terminal 100 and AP6. In this modification, printer 10A may act as Configurator, terminal 100 may act as Enrollee, and printer 10A may send terminal CO to terminal 100. In this modification, terminal CO is an example of "connection information". In another modification, DPP processing may be performed between terminal 100 and printer 10A to establish a Wi-Fi connection between terminal 100 and printer 10A. In this modification, terminal 100 or printer 10A is an example of "external device". In yet another modification, terminal 100 may send printer CO including AP6's SSID and password to printer 10A instead of sending printer CO including printer SC to printer 10A. In this modified example, the printer CO, which includes the SSID and password for AP6, is an example of "connection information".
[0138] (Modification 2) In the above embodiment, the selection screen SC1 (see Figure 3) included both a model name input area and three setup information acquisition means. In this modification, these may be displayed on separate screens. For example, the application 138 may first display a screen containing only the model name input area, and if no model name is entered on that screen, it may then display a screen containing the three setup information acquisition means. In this modification, the screen containing only the model name input area is an example of "model name reception information". In another modification, the selection screen SC1 may not include a model name input area. In this modification, the "third display control unit" can be omitted.
[0139] (Modification 3) In the above embodiment, on the selection screen SC2 (see Figure 3), only one mark indicating a setup information acquisition means (the mark indicating a QR code in the example of Figure 3) is selectable, and the remaining two marks indicating setup information acquisition means (the mark indicating NFC and the mark indicating BT in the example of Figure 3) are grayed out. In the modification, the selection screen SC2 may not include the two grayed-out marks mentioned above, and may include only the mark indicating a QR code. In this modification, the absence of these two marks on the selection screen SC2 is an example of having an "unselectable configuration".
[0140] (Modification 4) The selection screen SC2 does not need to include message M1. In this modification, the "fourth display control unit" can be omitted.
[0141] (Modification 5) The application 138 may omit the processes of T116 and T118 in Figure 5 and execute the process of T119. In this case, for example, the notification screen SC8 displayed in T119 may include a message corresponding to the content of the confirmation screen SC3 (i.e., a message asking the user whether or not the QR code was found). That is, in this modification, the "first confirmation information" and the "support information" may be displayed on the same screen. In another modification, the process of S22 in Figure 3 can be omitted. In this modification, the "fifth display control unit" can be omitted.
[0142] (Modification 6) If app 138 determines NO in S24 of Figure 3, it may terminate the process in Figure 3 without returning to the process in S10. In this case, app 138 may display information indicating a setup error. In this modification, the "sixth display control unit" can be omitted.
[0143] (Modification 7) App 138 can omit the processes S32 and S34 in Figure 3. In this case, for example, if App 138 determines YES in S30, it may automatically change the state of BTI / F120 from a state where it cannot receive advertised signals to a state where it can receive advertised signals. Then, when setup information is received using BT communication, App 138 may display information to confirm to the user whether or not to extract the public key from the setup information and start the setup. In this modification, the above information displayed after the setup information is received is an example of a "second message".
[0144] (Modification 8) If app 138 determines NO in S38 of Figure 3, it may terminate the process in Figure 3 without returning to the process in S10. In this case, app 138 may display information indicating a setup error. In this modification, the "seventh display control unit" can be omitted.
[0145] (Modification 9) The application 138 may omit the processes of T716 and T718 in Figure 12 and execute the process of T719. In this case, for example, the notification screen SC9 displayed in T719 may include a message corresponding to the content of the confirmation screen SC5 (i.e., a message asking the user whether or not the NFC mark N1 has been found). That is, in this modification, the "third confirmation information" and the "support information" may be displayed on the same screen. In another modification, the process of S42 in Figure 3 can be omitted. In this modification, the "eighth display control unit" can be omitted.
[0146] (Modification 10) Setup information does not need to include DPP migration operation information. In this modification, the "ninth display control unit" and the "predetermined instruction transmission unit" can be omitted.
[0147] (Modification 11) In S70 of Figure 4, the application 138 may display a notification screen SC7 that does not include a message asking whether or not to execute the DPP transition instruction, nor a YES button or a NO button. In this case, the application 138 may send the DPP transition instruction to the target printer without accepting user input in response to the display of the notification screen SC7. In this modification, the "10th display control unit" can be omitted.
[0148] (Modification 12) In the above embodiment, each process in Figures 3 to 14 was implemented by software such as program 36, but at least one of these processes may be implemented by hardware such as a logic circuit.
[0149] The technical elements described herein or in the drawings demonstrate technical usefulness individually or in various combinations, and are not limited to the combinations described in the claims at the time of filing. Furthermore, the technologies illustrated herein or in the drawings can achieve multiple objectives simultaneously, and achieving even one of these objectives constitutes technical usefulness in itself.
[0150] Even if, in the claims of this patent application, each claim depends on only some of the claims, it is not limited to the claim being dependent only on those specific claims. To the extent that it is not technically contradictory, each claim may be dependent on other claims that were not dependent at the time of application. That is, the technologies of each claim can be combined in various ways as follows: (Item 1) A computer program for a first communication device, The first communication device is, A Wi-Fi interface for performing Wi-Fi communication in accordance with Wi-Fi standards, Display unit and Computers and, Equipped with, The aforementioned computer program comprises the following components of the computer, namely: A first display control unit that causes the display unit to display first means selection information including M acquisition means (where M is an integer of 2 or more) for acquiring a bootstrapping key for a communication device different from the first communication device, A second display control unit that, when a specific acquisition means is selected from the M acquisition means included in the first means selection information, displays a specific support information corresponding to the specific acquisition means from among the M support information corresponding to the M acquisition means, wherein each of the M support information is information for supporting the acquisition of the bootstrapping keys of the different communication devices by the acquisition means corresponding to the support information, After the selection of the specified acquisition means, an acquisition unit acquires a specific bootstrapping key, which is the bootstrapping key of a second communication device different from the first communication device, using the specified acquisition means. When the aforementioned specific bootstrapping key is obtained, the authentication request transmission unit transmits an authentication request using the aforementioned specific bootstrapping key to the second communication device via the Wi-Fi interface. When the authentication request is transmitted to the second communication device, the authentication response receiving unit receives an authentication response from the second communication device via the Wi-Fi interface, A connection information communication unit, which, when the authentication response is received from the second communication device, communicates connection information with the second communication device via the Wi-Fi interface, wherein the connection information is information for establishing a Wi-Fi connection between the first communication device or the second communication device and an external device, A computer program that functions as such. (Item 2) The aforementioned computer program further uses the computer, It functions as a third display control unit that displays model name reception information for receiving the model name of a communication device on the display unit, The first display control unit, If no model name is specified while the aforementioned model name reception information is displayed, the first means selection information is displayed on the display unit. When a specific model name is specified while the aforementioned model name reception information is displayed, the second means selection information is displayed on the display unit. The second means selection information is a computer program according to item 1, which includes N acquisition means (where N is an integer between 1 and M) from among the M acquisition means, corresponding to a communication device having the specific model name, and having selectable configurations. (Item 3) The computer program described in item 2 further includes (MN) acquisition means among the M acquisition means, which are different from the N acquisition means and have an unselectable configuration. (Item 4) The aforementioned computer program further uses the computer, When a model name is specified while the aforementioned model name reception information is displayed, the fourth display control unit is configured to display first method information on the display unit indicating a first operation to transition the state of the communication device having the specified model name from a non-responsive state to a responsive state. The non-response state is a state in which the communication device having the specified model name is unable to send an authentication response. The computer program according to item 2 or 3, wherein the response state is a state in which the communication device having the specified model name is capable of sending an authentication response. (Item 5) If the specific acquisition means is the capture of a code image obtained using the bootstrapping key of the different communication device, the specific support information includes a first message prompting the user to capture the code image, according to any one of items 1 to 4. (Item 6) The aforementioned computer program further uses the computer, The computer program described in item 5, which functions as a fifth display control unit that displays first confirmation information on the display unit to confirm to the user whether or not the code image has been found, when the specific acquisition means is the capture of the code image. (Item 7) The aforementioned computer program further uses the computer, When the first confirmation information is displayed, if it is selected that the code image was not found, the sixth display control unit will function by displaying a second method information indicating a second operation to transition the state of the different communication device from a non-responsive state to a responsive state on the display unit. The non-response state is a state in which the different communication devices are unable to send an authentication response. The computer program described in item 6, wherein the response state is a state in which the different communication devices are capable of sending an authentication response. (Item 8) If the specific acquisition means is a first communication including Bluetooth® communication, the specific support information includes a second message to confirm to the user whether or not to receive the bootstrapping key of the different communication device using the first communication, according to any one of items 1 to 7. (Item 9) The aforementioned computer program further uses the computer, In a state where the specific support information including the second message is displayed, if, after selecting to receive the bootstrapping key of the different communication device, the bootstrapping key of the different communication device is not received, the seventh display control unit is configured to display third method information indicating a third operation to transition the state of the different communication device from an unresponsive state to a responsive state on the display unit. The non-response state is a state in which the different communication devices are unable to send the authentication response. The computer program described in item 8, wherein the response state is a state in which the different communication devices are capable of sending the authentication response. (Item 10) A computer program according to any one of items 1 to 9, wherein the specific acquisition means is a second communication including NFC (Near Field Communication) communication, and the specific support information includes a third message prompting the user to bring the first communication device closer to the different communication device. (Item 11) The aforementioned computer program further uses the computer, The computer program according to item 10, which functions as an eighth display control unit to display second confirmation information on the display unit to confirm to the user whether or not a predetermined mark located near the NFC interface of the different communication device has been found, when the specific acquisition means is the second communication. (Item 12) The acquisition unit further acquires the migration information of the second communication device along with the specific bootstrapping key of the second communication device. The transition information is information indicating whether or not a predetermined operation is required to transition the state of the second communication device from a non-responsive state to a responsive state. The non-response state is a state in which the second communication device is unable to transmit the authentication response. The response state is a state in which the second communication device is able to transmit the authentication response. The aforementioned computer program further uses the computer, A computer program according to any one of items 1 to 11, which functions as the ninth display control unit, causing the display unit to display a fourth method information indicating the predetermined operation when the transition information indicates that the predetermined operation is necessary, and not displaying the fourth method information when the transition information indicates that the predetermined operation is not necessary. (Item 13) The acquisition unit further acquires the migration information of the second communication device along with the specific bootstrapping key of the second communication device. The transition information is information indicating whether or not it is necessary to send a predetermined instruction to transition the state of the second communication device from a non-responsive state to a responsive state. The non-response state is a state in which the second communication device is unable to transmit the authentication response. The response state is a state in which the second communication device is able to transmit the authentication response. The aforementioned computer program further uses the computer, A computer program according to any one of items 1 to 11, which functions as a predetermined instruction transmission unit that transmits the predetermined instruction to the second communication device when the transition information indicates that the transmission of the predetermined instruction is necessary, and does not transmit the predetermined instruction when the transition information indicates that the transmission of the predetermined instruction is not necessary. (Item 14) The aforementioned computer program further uses the computer, When the transition information indicates that the transmission of the predetermined instruction is necessary, the tenth display control unit is configured to display a third confirmation information on the display unit to confirm with the user whether or not to transmit the predetermined instruction. When the predetermined instruction transmission unit is selected to transmit the predetermined instruction while the third confirmation information is displayed, it transmits the predetermined instruction to the second communication device. The computer program described in item 13, wherein, when the third confirmation information is displayed, the predetermined instruction is not sent if the user chooses not to send the predetermined instruction. (Item 15) A first communication device, A Wi-Fi interface for performing Wi-Fi communication in accordance with Wi-Fi standards, Display unit and A first display control unit that causes the display unit to display first means selection information including M acquisition means (where M is an integer of 2 or more) for acquiring a bootstrapping key for a communication device different from the first communication device, A second display control unit that, when a specific acquisition means is selected from the M acquisition means included in the first means selection information, displays a specific support information corresponding to the specific acquisition means from among the M support information corresponding to the M acquisition means, wherein each of the M support information is information for supporting the acquisition of the bootstrapping keys of the different communication devices by the acquisition means corresponding to the support information, After the selection of the specified acquisition means, an acquisition unit acquires a specific bootstrapping key, which is the bootstrapping key of a second communication device different from the first communication device, using the specified acquisition means. When the aforementioned specific bootstrapping key is obtained, the authentication request transmission unit transmits an authentication request using the aforementioned specific bootstrapping key to the second communication device via the Wi-Fi interface. When the authentication request is transmitted to the second communication device, the authentication response receiving unit receives an authentication response from the second communication device via the Wi-Fi interface, A connection information communication unit, which, when the authentication response is received from the second communication device, communicates connection information with the second communication device via the Wi-Fi interface, wherein the connection information is information for establishing a Wi-Fi connection between the first communication device or the second communication device and an external device, A first communication device equipped with the following: (Item 16) A method performed by a first communication device, The first communication device is, A Wi-Fi interface for performing Wi-Fi communication in accordance with Wi-Fi standards, Display unit and Equipped with, The aforementioned method, A first display control step of displaying first means selection information on the display unit, which includes M acquisition means (where M is an integer of 2 or more) for acquiring a bootstrapping key for a communication device different from the first communication device, A second display control step, in which, when a specific acquisition means is selected from the M acquisition means included in the first means selection information, a specific support information corresponding to the specific acquisition means is displayed on the display unit from among the M support information corresponding to the M acquisition means, wherein each of the M support information is information for supporting the acquisition of the bootstrapping keys of the different communication devices by the acquisition means corresponding to the support information, After the selection of the specified acquisition means, an acquisition step is performed in which a specific bootstrapping key, which is the bootstrapping key of a second communication device different from the first communication device, is acquired by the specified acquisition means. When the aforementioned specific bootstrapping key is obtained, the authentication request transmission step includes sending an authentication request using the aforementioned specific bootstrapping key to the second communication device via the Wi-Fi interface; When the authentication request is transmitted to the second communication device, the authentication response receiving step includes receiving an authentication response from the second communication device via the Wi-Fi interface, A connection information communication step, in which, when the authentication response is received from the second communication device, communication of connection information is performed with the second communication device via the Wi-Fi interface, wherein the connection information is information for establishing a Wi-Fi connection between the first communication device or the second communication device and an external device, A method that includes [a certain feature]. [Explanation of Symbols]
[0151] 2: Communication system, 6: AP, 10, 10A~10G: Printer, 12, 112: Operation unit, 14, 114: Display unit, 16, 116: Wi-Fi I / F, 18: Print execution unit, 20, 120: BTI / F, 22, 122: NFCI / F, 30, 130: Control unit, 32, 132: CPU, 34, 134: Memory, 36: Program, 100: Terminal, 118: Camera, 136: OS program, 138: Application
Claims
1. A computer program for a first communication device, The first communication device is A Wi-Fi interface for performing Wi-Fi communication in accordance with the Wi-Fi standard, Display unit and Computers and, Equipped with, The aforementioned computer program comprises the following components of the computer, namely: A first display control unit that causes the display unit to display first means selection information including M acquisition means (where M is an integer of 2 or more) for acquiring a bootstrapping key for a communication device different from the first communication device, A second display control unit, which, when a specific acquisition means is selected from the M acquisition means included in the first means selection information, causes the display unit to display a specific support information corresponding to the specific acquisition means from among the M support information corresponding to the M acquisition means, wherein each of the M support information is information for supporting the acquisition of the bootstrapping keys of the different communication devices by the acquisition means corresponding to the support information, After the selection of the specified acquisition means, an acquisition unit acquires a specific bootstrapping key, which is the bootstrapping key of a second communication device different from the first communication device, using the specified acquisition means. When the aforementioned specific bootstrapping key is obtained, an authentication request transmission unit transmits an authentication request using the aforementioned specific bootstrapping key to the second communication device via the Wi-Fi interface. When the authentication request is transmitted to the second communication device, the authentication response receiving unit receives an authentication response from the second communication device via the Wi-Fi interface. A connection information communication unit, which, when the authentication response is received from the second communication device, communicates connection information with the second communication device via the Wi-Fi interface, wherein the connection information is information for establishing a Wi-Fi connection between the first communication device or the second communication device and an external device, A computer program that functions as such.
2. The aforementioned computer program further uses the computer, It functions as a third display control unit that displays model name reception information for receiving the model name of a communication device on the display unit. The first display control unit is, If no model name is specified while the aforementioned model name reception information is displayed, the first means selection information is displayed on the display unit. When a specific model name is specified while the aforementioned model name reception information is displayed, the second means selection information is displayed on the display unit. The computer program according to claim 1, wherein the second means selection information includes N acquisition means (where N is an integer between 1 and M) from among the M acquisition means, corresponding to a communication device having the specific model name, and the N acquisition means have a selectable configuration.
3. The computer program according to claim 2, wherein the second means selection information further includes (M-N) acquisition means among the M acquisition means, which are different from the N acquisition means and have an unselectable configuration.
4. The aforementioned computer program further uses the computer, When a model name is specified while the aforementioned model name reception information is displayed, the fourth display control unit is configured to display first method information on the display unit indicating a first operation to transition the state of the communication device having the specified model name from a non-responsive state to a responsive state. The non-response state is a state in which the communication device having the specified model name is unable to send an authentication response. The computer program according to claim 2, wherein the response state is a state in which the communication device having the specified model name is capable of sending an authentication response.
5. The computer program according to claim 1, wherein, if the specific acquisition means is the capture of a code image obtained using the bootstrapping key of the different communication device, the specific support information includes a first message prompting the user to capture the code image.
6. The aforementioned computer program further uses the computer, The computer program according to claim 5, which functions as a fifth display control unit that displays first confirmation information on the display unit to confirm to the user whether or not the code image has been found, when the specific acquisition means is the capture of the code image.
7. The aforementioned computer program further uses the computer, When the first confirmation information is displayed, if it is selected that the code image was not found, the sixth display control unit will function by displaying a second method information indicating a second operation to transition the state of the different communication device from a non-responsive state to a responsive state on the display unit. The non-response state is a state in which the different communication devices are unable to send an authentication response. The computer program according to claim 6, wherein the response state is a state in which the different communication devices are capable of sending an authentication response.
8. The computer program according to claim 1, wherein, if the specific acquisition means is a first communication including Bluetooth® communication, the specific support information includes a second message for confirming to the user whether or not to receive the bootstrapping key of the different communication device using the first communication.
9. The aforementioned computer program further uses the computer, In a state where the specific support information including the second message is displayed, if, after selecting to receive the bootstrapping key of the different communication device, the bootstrapping key of the different communication device is not received, the seventh display control unit is configured to display third method information indicating a third operation to transition the state of the different communication device from an unresponsive state to a responsive state on the display unit. The non-response state is a state in which the different communication devices are unable to send the authentication response. The computer program according to claim 8, wherein the response state is a state in which the different communication devices are capable of transmitting the authentication response.
10. The computer program according to claim 1, wherein, when the specific acquisition means is a second communication including NFC (Near Field Communication) communication, the specific support information includes a third message prompting the user to bring the first communication device closer to the different communication device.
11. The aforementioned computer program further uses the computer, The computer program according to claim 10, which functions as an eighth display control unit to display second confirmation information on the display unit to confirm to the user whether or not a predetermined mark located near the NFC interface of the different communication device has been found, when the specific acquisition means is the second communication.
12. The acquisition unit further acquires the transition information of the second communication device along with the specific bootstrapping key of the second communication device. The transition information is information indicating whether or not a predetermined operation is required to transition the state of the second communication device from a non-responsive state to a responsive state. The non-response state is a state in which the second communication device is unable to transmit the authentication response. The response state is a state in which the second communication device is capable of transmitting the authentication response. The aforementioned computer program further uses the computer, A computer program according to claim 1, comprising a ninth display control unit that causes the display unit to display a fourth method information indicating the predetermined operation when the transition information indicates that the predetermined operation is necessary, and which functions as the ninth display control unit that does not display the fourth method information when the transition information indicates that the predetermined operation is not necessary.
13. The acquisition unit further acquires the transition information of the second communication device along with the specific bootstrapping key of the second communication device. The transition information is information indicating whether or not it is necessary to send a predetermined instruction to transition the state of the second communication device from a non-responsive state to a responsive state. The non-response state is a state in which the second communication device is unable to transmit the authentication response. The response state is a state in which the second communication device is capable of transmitting the authentication response. The aforementioned computer program further uses the computer, A computer program according to claim 1, comprising a predetermined instruction transmission unit that transmits the predetermined instruction to the second communication device when the transition information indicates that the transmission of the predetermined instruction is necessary, and which functions as a predetermined instruction transmission unit that does not transmit the predetermined instruction when the transition information indicates that the transmission of the predetermined instruction is not necessary.
14. The aforementioned computer program further uses the computer, When the transition information indicates that the transmission of the predetermined instruction is necessary, the tenth display control unit is configured to display a third confirmation information on the display unit to confirm with the user whether or not to transmit the predetermined instruction. When the predetermined instruction transmission unit is selected to transmit the predetermined instruction while the third confirmation information is displayed, it transmits the predetermined instruction to the second communication device. The computer program according to claim 13, wherein, when the third confirmation information is displayed, if it is selected not to send the predetermined instruction, the predetermined instruction is not sent.
15. A first communication device, A Wi-Fi interface for performing Wi-Fi communication in accordance with the Wi-Fi standard, Display unit and A first display control unit that causes the display unit to display first means selection information including M acquisition means (where M is an integer of 2 or more) for acquiring a bootstrapping key for a communication device different from the first communication device, A second display control unit, which, when a specific acquisition means is selected from the M acquisition means included in the first means selection information, causes the display unit to display a specific support information corresponding to the specific acquisition means from among the M support information corresponding to the M acquisition means, wherein each of the M support information is information for supporting the acquisition of the bootstrapping keys of the different communication devices by the acquisition means corresponding to the support information, After the selection of the specified acquisition means, an acquisition unit acquires a specific bootstrapping key, which is the bootstrapping key of a second communication device different from the first communication device, using the specified acquisition means. When the aforementioned specific bootstrapping key is obtained, an authentication request transmission unit transmits an authentication request using the aforementioned specific bootstrapping key to the second communication device via the Wi-Fi interface. When the authentication request is transmitted to the second communication device, the authentication response receiving unit receives an authentication response from the second communication device via the Wi-Fi interface. A connection information communication unit, which, when the authentication response is received from the second communication device, communicates connection information with the second communication device via the Wi-Fi interface, wherein the connection information is information for establishing a Wi-Fi connection between the first communication device or the second communication device and an external device, A first communication device comprising the following:
16. A method performed by a first communication device, The first communication device is A Wi-Fi interface for performing Wi-Fi communication in accordance with the Wi-Fi standard, Display unit and Equipped with, The aforementioned method, A first display control step of displaying first means selection information on the display unit, which includes M acquisition means (where M is an integer of 2 or more) for acquiring a bootstrapping key for a communication device different from the first communication device, A second display control step, in which, when a specific acquisition means is selected from the M acquisition means included in the first means selection information, a specific support information corresponding to the specific acquisition means is displayed on the display unit from among the M support information corresponding to the M acquisition means, wherein each of the M support information is information for supporting the acquisition of the bootstrapping keys of the different communication devices by the acquisition means corresponding to the support information, After the selection of the specified acquisition means, an acquisition step is performed in which a specific bootstrapping key, which is the bootstrapping key of a second communication device different from the first communication device, is acquired by the specified acquisition means. When the aforementioned specific bootstrapping key is obtained, the authentication request transmission step includes transmitting an authentication request using the aforementioned specific bootstrapping key to the second communication device via the Wi-Fi interface; When the authentication request is transmitted to the second communication device, the authentication response receiving step includes receiving an authentication response from the second communication device via the Wi-Fi interface, A connection information communication step, in which, when the authentication response is received from the second communication device, communication of connection information is performed with the second communication device via the Wi-Fi interface, wherein the connection information is information for establishing a Wi-Fi connection between the first communication device or the second communication device and an external device; A method that includes [a certain feature].