Communication device, computer program for communication device, application program for terminal device, and terminal device
The described method allows for efficient Wi-Fi connection between a communication device and an access point by using a public key or network identification information based on the terminal device's DPP support, ensuring seamless connectivity.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- BROTHER KOGYO KK
- Filing Date
- 2022-09-30
- Publication Date
- 2026-05-11
AI Technical Summary
Existing technologies face challenges in efficiently establishing a Wi-Fi connection between a communication device and an access point, particularly when the terminal device does not support the Device Provisioning Protocol (DPP).
The communication device outputs a code image containing a public key and specific network identification information, allowing it to establish a Wi-Fi connection based on whether the terminal device supports DPP, using either the public key for DPP authentication or the network identification information for a direct connection, while the terminal device determines its capability and supplies the necessary connection information accordingly.
This approach enables appropriate Wi-Fi connection establishment between the communication device and the access point, regardless of the terminal device's DPP support, by utilizing either DPP authentication or direct network information, thus ensuring seamless connectivity.
Smart Images

Figure 0007855984000001 
Figure 0007855984000002 
Figure 0007855984000003
Abstract
Description
Technical Field
[0001] This specification relates to a technology for establishing a Wi-Fi connection between a communication device and an access point using a terminal device.
Background Art
[0002] Non-Patent Document 1 describes the Device Provisioning Protocol (DPP), a wireless communication method established by the Wi-Fi Alliance. DPP is a wireless communication method for easily establishing a Wi-Fi connection between a pair of devices.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Non-Patent Documents
[0004]
Non-Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] This specification discloses a technology for appropriately establishing a Wi-Fi connection between a communication device and an access point.
Means for Solving the Problems
[0006] The communication device disclosed herein includes a Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, an output control unit that causes an output unit to output a code image representing code information including a public key of the communication device and specific network identification information that identifies a specific wireless network, a first connection information receiving unit that, in the first case where the public key included in the code information is used by the terminal device in response to the code image being captured by a terminal device different from the communication device, performs a predetermined communication using the public key via the Wi-Fi interface with the terminal device and receives first connection information from the terminal device, and uses the first connection information to... The system may include: a first establishment unit that establishes a Wi-Fi connection with a target access point via a Wi-Fi interface; a second establishment unit that establishes a Wi-Fi connection with a terminal device via the Wi-Fi interface in a second case where the terminal device uses the specific network identification information contained in the code information in response to the code image being captured by the terminal device; a second connection information receiving unit that receives second connection information from the terminal device via the Wi-Fi interface using the Wi-Fi connection with the terminal device; and a third establishment unit that establishes a Wi-Fi connection with the target access point using the second connection information.
[0007] According to the above configuration, the communication device outputs a code image representing code information including the communication device's public key and specific network identification information. When the code image is captured by a terminal device, if the public key is used by the terminal device, the communication device receives first connection information from the terminal device and uses the first connection information to establish a Wi-Fi connection with the target access point. On the other hand, when the code image is captured by a terminal device, if the specific network identification information is used by the terminal device, the communication device receives second connection information from the terminal device and uses the second connection information to establish a Wi-Fi connection with the target access point. In this way, the communication device can appropriately establish a Wi-Fi connection with the target access point by performing processing according to whether the public key or the specific network identification information is used by the terminal device.
[0008] This specification also discloses an application program for a terminal device. The terminal device may include a Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard and a computer. The application program controls the computer by including the following parts: an acquisition unit for acquiring specific information relating to a communication device, which includes the public key of the communication device and specific network identification information that identifies a specific wireless network; a determination unit for determining whether the terminal device can perform a predetermined communication using the public key when the specific information is acquired; and a first supply unit for supplying the public key to the OS program in the first case where it is determined that the terminal device can perform the predetermined communication. The OS program, upon acquiring the public key from the application program, performs the predetermined communication with the communication device via the Wi-Fi interface and transmits first connection information to the communication device, which constitutes a Wi-Fi connection between the communication device and the target access point. The first supply unit provides information for establishing a connection; the second supply unit provides specific network identification information to the OS program in the second case where it is determined that the terminal device is not capable of performing the predetermined communication, wherein the OS program, upon obtaining the specific network identification information from the application program, uses the specific network identification information via the Wi-Fi interface to establish a Wi-Fi connection with the communication device; and the connection information transmission unit transmits second connection information to the communication device via the Wi-Fi interface using the Wi-Fi connection with the communication device, wherein the second connection information is information for establishing a Wi-Fi connection between the communication device and the target access point.
[0009] According to the above configuration, when the application program obtains specific information including the public key of the communication device and specific network identification information, it determines whether the terminal device can perform a predetermined communication using the public key. If the application program determines that the terminal device can perform the predetermined communication, it supplies the public key to the OS program. As a result, the OS program sends the first connection information to the communication device, and a Wi-Fi connection is established between the communication device and the target access point. On the other hand, if the application program determines that the terminal device cannot perform the predetermined communication, it supplies the network identification information to the OS program. In this case, the OS program uses the specific network identification information to establish a Wi-Fi connection with the communication device. The application program then uses this Wi-Fi connection to send the second connection information to the communication device. As a result, a Wi-Fi connection is established between the communication device and the target access point. In this way, the terminal device can appropriately establish a Wi-Fi connection between the communication device and the target access point by performing processing according to whether or not the terminal device can perform the predetermined communication.
[0010] The computer program for the above-mentioned communication device, the computer-readable recording medium for storing the computer program, and the method executed by the communication device are also novel and useful. Furthermore, the computer-readable recording medium for storing the above-mentioned application program, the terminal device itself implemented by the above-mentioned application program, and the method executed by the terminal device are also novel and useful. [Brief explanation of the drawing]
[0011] [Figure 1] Figure 1 shows the configuration of the communication system. [Figure 2] Figure 2 shows a sequence diagram of the processes performed between each device. [Figure 3] Figure 3 shows the sequence diagram for Case A. [Figure 4] Figure 4 shows the sequence diagram for Case B. [Modes for carrying out the invention]
[0012] (Configuration of communication system 2; Figure 1) As shown in Figure 1, the communication system 2 comprises two access points 6A and 6B, two terminals 10A and 10B, and a printer 100. Hereinafter, an access point will be referred to as "AP". This specification discloses a technology for establishing a wireless connection in accordance with the Wi-Fi standard between AP6A or AP6B and the printer 100 using terminal 10A or terminal 10B. Hereinafter, a wireless connection in accordance with the Wi-Fi standard will be referred to as "Wi-Fi connection".
[0013] (Configuration of terminal 10A) Terminal 10A is a portable terminal device such as a mobile phone, smartphone, PDA, or tablet PC. In a modified example, terminal 10A may be a stationary PC, laptop PC, or the like. Terminal 10A comprises an operation unit 12A, a display unit 14A, a Wi-Fi interface 16A, a camera 18A, and a control unit 30A. Each unit 12A to 30A is connected to a bus line. Hereafter, the interface will be referred to as "I / F".
[0014] The operation unit 12A is an interface that allows the user to input various information to the terminal 10A, and includes, for example, a touchscreen and buttons. The user can input various information to the terminal 10A via the operation unit 12A. The display unit 14A is a display for displaying various information. The camera 18A is a device for photographing objects. In this embodiment, the camera 18A is used to photograph the QR code displayed on the printer 100. QR Code is a registered trademark of DENSO WAVE INCORPORATED.
[0015] The Wi-Fi I / F16A is a wireless interface for performing Wi-Fi communication in accordance with the Wi-Fi standard. The Wi-Fi standard is a wireless communication standard for performing wireless communication in accordance with the 802.11 standard and equivalent standards, such as 802.11a, 11b, 11g, 11n, and 11ac, from, for example, The Institute of Electrical and Electronics Engineers, Inc. (IEEE). In particular, the Wi-Fi I / F16A supports the Device Provisioning Protocol (DPP) developed by the Wi-Fi Alliance. Details of DPP are described in the "Wi-Fi Easy Connect Specification Version 2.0" standard document created by the Wi-Fi Alliance.
[0016] Furthermore, terminal 10A can establish a Wi-Fi connection with the AP by using the Service Set Identifier (SSID) and password of the wireless network formed by the AP. Hereafter, the password will be referred to as "PW".
[0017] Wi-Fi communication utilizes radio waves in one of several frequency bands, including two frequency bands, 2.4GHz and 5.0GHz (for example, 1.0GHz, 6.0GHz). This specification assumes a situation where Wi-Fi communication utilizes radio waves in either the 2.4GHz or 5.0GHz frequency band. The Wi-Fi I / F16A supports both 2.4GHz and 5.0GHz. That is, the Wi-Fi I / F16A can perform both wireless communication using 2.4GHz radio waves and wireless communication using 5.0GHz radio waves.
[0018] The control unit 30A includes a CPU 32A and a memory 34A. The memory 34A stores an OS program 36A and an application program 38. The CPU 32A executes various processes according to the OS program 36A and the application program 38 stored in the memory 34A. The memory 34A is, for example, a ROM or a RAM. Hereinafter, the OS program will be referred to as "OS", and the application program will be referred to as "app".
[0019] The OS 36A controls the basic operations of the terminal 10A. The app 38 can establish a Wi-Fi connection between the terminal 10A and either the AP 6A or the AP 6B, or between the printer 100 and the AP 6B by causing the OS 36A to execute processes according to the DPP. The app 38 is downloaded, for example, from a server on the Internet provided by the vendor of the printer 100 and installed in the terminal 10A.
[0020] The memory 34A further stores DPP support information. The DPP support information is information indicating that the Wi-Fi I / F 16 supports DPP.
[0021] (Configuration of the terminal 10B) The terminal 10B is a portable terminal device such as a mobile phone, a smartphone, a PDA, or a tablet PC. In a modified example, the terminal 10B may be a stationary PC, a laptop PC, or the like. The terminal 10B includes an operation unit 12B, a display unit 14B, a Wi-Fi interface 16B, a camera 18B, and a control unit 30B. Each unit 12B to 30B is connected to a bus line. The control unit 30B includes a CPU 32B and a memory 34B.
[0022] The configuration of each section 12B to 34B is the same as that of each section 12A to 34A of terminal 10A, except that Wi-FiI / F16B does not support DPP. That is, Wi-FiI / F16B supports the normal Wi-Fi method but does not support DPP. Therefore, memory 34B also stores DPP non-support information indicating that Wi-FiI / F16B does not support DPP.
[0023] (Configuration of Printer 100) The printer 100 is a peripheral device capable of performing printing functions, such as a peripheral device for terminals 10A and 10B. In a modified example, the printer 100 may be a multifunction device capable of performing, for example, scanning and facsimile functions in addition to printing functions. The printer 100 comprises an operation unit 112, a display unit 114, a Wi-Fi interface 116, a print engine 118, and a control unit 130. Each of the units 112 to 130 is connected to a bus line.
[0024] The operation unit 112 is an interface that allows the user to input various information to the printer 100, and includes, for example, a touchscreen and buttons. The user can input various information to the printer 100 via the operation unit 112. In particular, the operation unit 112 includes a Wi-Fi button that enables communication via the Wi-Fi interface 116. The display unit 114 is a display for displaying various information. The printing engine 118 includes, for example, an inkjet or laser printing mechanism.
[0025] The Wi-Fi I / F116 is basically the same as the Wi-Fi I / F16A in terminal 10A, but it only supports the 2.4GHz frequency band and not the 5.0GHz frequency band. In other words, the Wi-Fi I / F116 can only perform wireless communication using 2.4GHz radio waves.
[0026] The control unit 130 comprises a CPU 132 and a memory 134. The CPU 132 performs various processes according to a program 136 stored in the memory 134. The memory 134 is, for example, ROM or RAM. The memory 134 also stores the public key PKpr, the SSID "CCC", and the password "ZZZ". The public key PKpr is information used when processing according to DPP is performed. The SSID "CCC" and password "ZZZ" are information used in the wireless network formed by the printer 100 operating as a SoftAP.
[0027] (AP6A configuration) AP6A is a device that enables communication between devices belonging to a wireless network where AP6A itself acts as the master station. AP6A stores the public key PKapA, the SSID "AAA", and the password "XXX". The public key PKapA is information used when processing according to DPP is performed. The SSID "AAA" and password "XXX" are information used in the wireless network formed by AP6A. AP6A supports only the 5.0GHz frequency band.
[0028] (AP6B configuration) AP6B stores the public key PKapB, the SSID "BBB", and the password "YYY". AP6B only supports the 2.4GHz frequency band. Otherwise, its configuration is the same as AP6A.
[0029] (Processing performed between each device; Figure 2) Next, referring to Figure 2, we will explain the processes performed between each device. For the sake of clarity, in the following explanation, when describing the processes performed by the CPUs (e.g., 32A, 32B, 132) of each device (e.g., terminals 10A, 10B, printer 100), we will describe each device as the main processing entity, rather than each CPU. In particular, when describing processes performed by a terminal's CPU that are realized by the CPU executing the OS, we will describe the OS as the main processing entity, rather than the terminal. Similarly, when describing processes performed by a terminal's CPU that are realized by the CPU executing an application, we will describe the application as the main processing entity, rather than the terminal. Furthermore, communication between each device is performed via a Wi-Fi interface (e.g., 16A, 16B, 116). Therefore, in the following explanation, when describing communication, we will omit the phrase "via Wi-Fi interface."
[0030] In Figure 2, terminal 10A or terminal 10B are represented by the same box. This means that either terminal 10A or terminal 10B is operated by the user. Hereafter, the terminal operated by the user may be referred to as the "target terminal". In the initial state of Figure 2, a Wi-Fi connection is established between the target terminal and AP6A.
[0031] When printer 100 detects a user's power-on operation at T10, it turns on its power. Subsequently, when printer 100 detects a user's operation of the Wi-Fi button at T12, it starts SoftAP at T14 and transitions from a DPP unresponsive state to a DPP responsive state. The DPP unresponsive state is a state in which it is unable to send an authentication response in accordance with DPP. The DPP responsive state is a state in which it is able to send an authentication response in accordance with DPP. By starting SoftAP, printer 100 operates as the master station of the wireless network.
[0032] Printer 100 generates code information at T16. The code information includes the string "WIFI:S:CCC;P:ZZZ;;DPP:K:PKpr;;". The string "WIFI:S:CCC;P:ZZZ;;" indicates that the SSID of the wireless network formed by printer 100 operating as a SoftAP is "CCC" and the PW is "ZZZ". The string "DPP:K:PKpr;;" indicates that the public key used in DPP is PKpr. The format of the string "DPP:K:PKpr;;" is written according to the Bootsstrapping Information Format specified by DPP. Therefore, a terminal that obtains this code information can recognize the SSID "CCC", password "ZZZ", and public key PKpr. In addition to the above information, the code information may also include, for example, the serial number and MAC address.
[0033] Printer 100 displays a QR code obtained by encoding code information in T18 on the display unit 114. In this way, the QR code is displayed after the SoftAP of printer 100 is started, so a Wi-Fi connection is properly established between the target terminal and printer 100, which is operating as a SoftAP, as will be described later in Figure 4. Hereafter, the Wi-Fi connection established between the target terminal and printer 100, which is operating as a SoftAP, will be referred to as the "SoftAP connection".
[0034] The target device detects an application launch operation by the user in T20. In this case, application 38 installed on the target device is launched in T22. An application launch operation is, for example, selecting the icon of application 38.
[0035] App 38 activates camera 18A or 18B. Then, when App 38 detects that the user has taken a picture of a QR code at T24, it decodes the QR code. As a result, App 38 can obtain the SSID "CCC", PW "ZZZ", and public key PKpr contained in the code information at T26.
[0036] App 38 determines at T30 whether the target device supports DPP or not. Specifically, App 38 retrieves either DPP support information or DPP non-support information from the target device's memory. If App 38 retrieves DPP support information, it determines YES at T30 and proceeds to the process shown in Figure 3. On the other hand, if App 38 retrieves DPP non-support information, it determines NO at T30 and proceeds to the process shown in Figure 4. In a modified example, App 38 may also determine NO at T30 if it cannot retrieve DPP support information from the target device's memory.
[0037] (Case A; Figure 3) Next, we will explain Case A with reference to Figure 3. Case A is the case where T30 in Figure 2 is judged as YES, that is, the case where the target terminal is terminal 10A which supports DPP.
[0038] Application 38 supplies a DPP start command to OS36A at T100. The DPP start command includes the acquired public key PKpr of printer 100 (see T26 in Figure 2). The DPP start command is an instruction to OS36A to perform various communications in accordance with DPP. Note that the processing at T24 and T26 in Figure 2 corresponds to DPP bootstrapping.
[0039] When OS36A receives a DPP start command from application 38 at T100, it sends an Authentication Request to printer 100 at T102 using the public key PKpr included in the DPP start command. Hereafter, Authentication will be referred to as "Auth," and Request will be referred to as "Req."
[0040] The Auth Req is a signal requesting authentication from the sending terminal 10A. Specifically, OS36A first generates a shared key using terminal 10A's private key and printer 100's public key PKpr, and then generates encrypted data by encrypting a random value using the shared key. Then, OS36A sends the Auth Req to printer 100, which includes terminal 10A's public key, the encrypted data, and terminal 10A's Capability. Terminal 10A's Capability includes a value indicating that it can only operate as a DPP Configurator.
[0041] When printer 100 receives an Auth Request from terminal 10A at T102, it performs authentication of the encrypted data contained in the Auth Request at T103. Specifically, printer 100 generates a shared key using terminal 10A's public key and printer 100'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 100 determines that authentication has been successful and proceeds with processing from T104 onwards.
[0042] In T104, printer 100 sends an Auth Response to terminal 10A that includes printer 100's Capability. Hereafter, Response will be referred to as "Res". Printer 100's Capability includes a value indicating that it can operate only as a DPP Enrollee.
[0043] When OS36A receives an Auth Res from printer 100 at T104, it determines that the AP6 Capability (i.e., Enrollee) included in the Auth Res does not match the terminal 10A's own Capability (i.e., Configurator). Then, at T105, OS36A sends an Auth Confirm to printer 100. The Auth Confirm contains information indicating that terminal 10A is operating as a Configurator and printer 100 is operating as an Enrollee. As a result, at T106, OS36A decides to operate as a Configurator. The Configurator is a device that sends the Configuration Object, described below, to the Enrollee. Hereafter, the Configuration Object will be referred to as "CO".
[0044] Furthermore, at T108, it is decided that printer 100 will act as the Enrollee. The Enrollee is a device that receives the CO from the Configurator. The processing at T102 to T108 corresponds to DPP authentication.
[0045] Furthermore, when printer 100 receives Auth Confirm from terminal 10A at T105, it stops SoftAP at T109. In case A, SoftAP is not used. Since the unnecessary SoftAP is stopped, the processing load on printer 100 can be reduced compared to when SoftAP is maintained.
[0046] In T110, printer 100 sends a Configuration Req to terminal 10A. Hereafter, Configuration will be referred to as "Config". Config Req is a signal requesting the transmission of a CO.
[0047] When OS36A receives a Config Request from printer 100 at T110, it generates a printer CO. Specifically, OS36A first generates a printer CO, which is information that should be used by printer 100 to establish a Wi-Fi connection. The printer CO includes, for example, the SSID "AAA" and PW "XXX" of the wireless network formed by AP6A. Then, at T112, OS36A sends a Config Request containing the printer CO to printer 100.
[0048] When printer 100 receives a Config Res from terminal 10A at T112, it sends a Config Result to terminal 10A at T114. The processing from T110 to T114 corresponds to the DPP Config.
[0049] Printer 100 broadcasts a Probe Request containing the SSID "AAA" within the printer's CO to T115. However, in this case, printer 100 only supports 2.4GHz, while AP6A only supports 5.0GHz. Therefore, the Probe Request is not received by AP6A.
[0050] Printer 100 does not receive a Probe Res from AP6A even after a predetermined time has elapsed since sending a Probe Req at T115. In this case, printer 100 sends a Status Query Result to terminal 10A at T120, which contains error information indicating that the Wi-Fi connection could not be established. Hereafter, the Status Query Result will be referred to as "Result".
[0051] When printer 100 sends a Result containing error information to terminal 10A at T120, it transitions from a DPP-responsive state to a DPP-unresponsive state at T122.
[0052] OS36A detects a user reconfiguration operation at T130. The reconfiguration operation is to establish a Wi-Fi connection with AP6B, which is different from AP6A. As a result, a Wi-Fi connection is established between terminal 10A and AP6B at T132. In this embodiment, terminal 10A has previously established a Wi-Fi connection with AP6B and has stored the SSID "BBB" and PW "YYY" used to establish a Wi-Fi connection with AP6B. Therefore, at T132, terminal 10A can establish a Wi-Fi connection with AP6B using the stored SSID "BBB" and PW "YYY".
[0053] Subsequently, the same processes as T12-T18 and T24-T30 in Figure 2 are performed. Furthermore, the same processes as T100-T114 in Figure 3 are performed. However, the printer CO generated at T112 includes the SSID "BBB" and PW "YYY" of the wireless network formed by AP6B. T140 is the same as T115. Since both printer 100 and AP6B support 2.4GHz, the Probe Request is received by AP6B.
[0054] When AP6B receives a Probe Request from printer 100 at T140, it sends a Probe Res to printer 100 at T142. As a result, a Wi-Fi connection is established between printer 100 and AP6B at T150. Note that the processes at T140 and T142 correspond to Network Access in DPP.
[0055] In this way, various communications in accordance with DPP are performed between terminal 10A and printer 100, thereby establishing a Wi-Fi connection between printer 100 and AP6B. As a result, printer 100 belongs as a slave station to the wireless network in which AP6B operates as the master station. Consequently, both terminal 10A and printer 100 belong to the wireless network formed by AP6B. This allows printer 100 to receive print data from terminal 10A via AP6B and perform printing according to that print data.
[0056] Next, the printer 100 sends a Result to terminal 10A at T152. This Result includes information indicating that a Wi-Fi connection has been established between the printer 100 and AP6B.
[0057] (Case B; Figure 4) Next, we will explain Case B with reference to Figure 4. Case B is the case where T30 in Figure 2 is judged as NO, that is, the case where the target terminal is terminal 10B which does not support DPP.
[0058] App 38 supplies a connection instruction to OS36B at T200. The connection instruction includes the acquired SSID "CCC" and PW "ZZZ" (see T26 in Figure 2). The connection instruction requests OS36B to establish a SoftAP connection with printer 100 via the wireless network identified by the acquired SSID "CCC" of terminal 10B. As a result, a SoftAP connection is established between terminal 10B and printer 100 at T202. Specifically, terminal 10B sends the acquired SSID "CCC" and PW "ZZZ" to printer 100. Printer 100 performs authentication of SSID "CCC" and PW "ZZZ". In this case, authentication is successful. That is, printer 100 determines that it has already memorized the combination of SSID "CCC" and PW "ZZZ". In this case, a SoftAP connection is established between terminal 10B and printer 100.
[0059] App 38 uses SoftAP connection on T204 to send a search command to printer 100.
[0060] When printer 100 receives a search command from terminal 10B at T204, it sends a Probe Request at T206 and receives Probe Ress at T208 from AP6A and AP6B, respectively, that are within range of printer 100, i.e., within range of printer 100's Wi-Fi communication capabilities. Specifically, printer 100 receives a Probe Res containing the SSID "AAA" from AP6A. Printer 100 also receives a Probe Res containing the SSID "BBB" from AP6B. Then, at T210, printer 100 uses SoftAP connection to send search result information, including the received SSIDs "AAA" and "BBB," to terminal 10B. In this way, printer 100 can search for APs in its vicinity.
[0061] When app 38 receives search result information from printer 100 at T210, it displays selection screen SC1 at T212, which includes the SSIDs "AAA" and "BBB" from the search result information. When app 38 detects that the user has selected SSID "BBB" on selection screen SC1 at T214, it displays password input screen SC2 at T220. When app 38 detects that the user has entered password "YYY" on password input screen SC2 at T222, it sends a connection instruction to printer 100 at T230, which includes SSID "BBB" and password "YYY".
[0062] When printer 100 receives a connection command from terminal 10B at T230, it uses the connection information contained in the command at T232 to establish a Wi-Fi connection with AP6B. Specifically, printer 100 sends the received connection information to AP6B. AP6B performs authentication of the connection information. In this case, the authentication of the connection information is successful. That is, AP6B determines that it has already memorized the combination of SSID "BBB" and PW "YYY" contained in the connection information. In this case, a Wi-Fi connection is established between printer 100 and AP6B.
[0063] App 38 receives a completion notification from printer 100 using SoftAP connection on T242.
[0064] Subsequently, the SoftAP connection between terminal 10B and printer 100 is disconnected, and a Wi-Fi connection is established between terminal 10B and AP6B. Terminal 10B has previously established a Wi-Fi connection with AP6B and has memorized the SSID "BBB" and PW "YYY" used to establish the Wi-Fi connection with AP6B. Therefore, terminal 10B can establish a Wi-Fi connection with AP6B using the memorized SSID "BBB" and PW "YYY". As a result, both terminal 10B and printer 100 belong to the wireless network formed by AP6B. This allows printer 100 to receive print data from terminal 10B via AP6B and perform printing according to that print data.
[0065] (Effects of the example) According to the above configuration, the printer 100 displays a QR code obtained by encoding the public key PKpr, the SSID "CCC", and the PW "ZZZ" (T18 in Figure 2). When the QR code is scanned (T24), the application 38 obtains the public key PKpr, the SSID "CCC", and the PW "ZZZ" (T26), and determines whether the target terminal on which the application 38 is installed supports DPP (T30). If the target terminal is terminal 10A which supports DPP (YES in 30 in Figure 2, Figure 3), the application 38 supplies the public key PKpr to the OS 36A (T100 in Figure 3). As a result, terminal 10A sends a printer CO to the printer 100 (T112), and a Wi-Fi connection is established between the printer 100 and AP6B (T150). On the other hand, if the target terminal is terminal 10B which does not support DPP (NO in 30 in Figure 2, Figure 4), application 38 supplies the SSID "CCC" and PW "ZZZ" to OS36B (T200 in Figure 4), and a SoftAP connection is established between terminal 10B and printer 100. As a result, a connection instruction including AP6B's SSID "BBB" and PW "YYY" is sent from terminal 10B to printer 100 via the SoftAP connection (T230), and a Wi-Fi connection is established between printer 100 and AP6B (T232). In this way, processing is performed according to whether or not the target terminal supports DPP, and a Wi-Fi connection is properly established between printer 100 and AP6B.
[0066] (Correspondence) Printer 100 is an example of a "communication device". In Case A, terminal 10A is an example of a "terminal device". In Case B, terminal 10B is an example of a "terminal device". OS36A and 36B are examples of "OS programs". App 38 is an example of an "application program". AP6B is an example of a "target access point". The public key PKpr of printer 100 is an example of a "public key". The state in which SoftAP is running is an example of a "master station state". The state in which SoftAP is stopped is an example of a "non-master station state". The wireless network formed by the startup of the printer 100's SoftAP is an example of a "specific wireless network". The SSID "CCC" of the wireless network is an example of "specific network identification information". Code information including the public key PKpr and SSID "CCC" is an example of "code information" and "specific information". QR code is an example of a "code image". The display unit 114 of printer 100 is an example of an "output unit". The printer CO is an example of "first connection information". The SSID "BBB" and PW "YYY" of the wireless network formed by AP6B are examples of "second connection information". The Auth Req of T102 in Figure 3 is an example of an "authentication request". The Auth Res of T104 is an example of an "authentication response". The Config Req of T110 is an example of a "connection information request". The communications of T102, T104, T105, T110, and T112 in Figure 3 are examples of "predetermined communications". The string "K:" included in the code information is an example of a "predetermined identifier".
[0067] The process at T14 in Figure 2 is an example of a process executed by the "first state transition unit" of the "communication device". The process at T18 in Figure 2 is an example of a process executed by the "output unit" of the "communication device". The processes at T102, T104, T105, T108, T110, and T112 in Figure 3 are examples of processes executed by the "first connection information receiving unit" of the "communication device". The process at T109 in Figure 3 is an example of a process executed by the "second state transition unit" of the "communication device". The process at T150 in Figure 3 is an example of a process executed by the "first establishment unit" of the "communication device". The process at T202 in Figure 4 is an example of a process executed by the "second establishment unit" of the "communication device". The process at T230 in Figure 4 is an example of a process executed by the "second connection information receiving unit" of the "communication device". The process at T232 in Figure 4 is an example of a process executed by the "third establishment unit" of the "communication device".
[0068] The process at T26 in Figure 2 is an example of a process executed by the "acquisition unit" of the "application program". The process at T30 in Figure 2 is an example of a process executed by the "determination unit" of the "application program". The process at T in the figure is an example of a process executed by the "first supply unit" of the "application program". The process at T200 in Figure 4 is an example of a process executed by the "second supply unit" of the "application program". The process at T230 in Figure 4 is an example of a process executed by the "connection information transmission unit" of the "application program".
[0069] The process at T26 in Figure 2 is an example of a process executed by the "acquisition unit" of the "terminal device". The process at T30 in Figure 2 is an example of a process executed by the "determination unit" of the "terminal device". The processes at T102, T104, T105, T106, T110, and T112 in Figure 2 are examples of processes executed by the "first connection information transmission unit" of the "terminal device". The process at T202 in Figure 4 is an example of a process executed by the "establishment unit" of the "terminal device". The process at T230 in Figure 4 is an example of a process executed by the "second connection information transmission unit" of the "terminal device".
[0070] 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.
[0071] (Modification 1) The printer 100 may print the QR code instead of displaying it. In this modification, the printing engine 118 is an example of an "output unit". Printing the QR code is an example of a process performed by the "output control unit" of the "communication device".
[0072] (Modification 2) The terminal may obtain the public key PKpr etc. of the printer 100 by taking a picture of the QR code attached to the printer 100 instead of the QR code displayed on the printer 100. In this modification, the process of obtaining the public key PKpr etc. by taking a picture of the QR code attached to the printer 100 is an example of a process executed by the "acquisition unit" of the "application program" and the "terminal device". In another modification, the terminal 10 may obtain the public key PKpr etc. from the printer 100 via, for example, Bluetooth communication or near-field communication (NFC) communication. Bluetooth is a registered trademark of Bluetooth SIG. In these modifications, obtaining the public key PKpr etc. via Bluetooth communication and obtaining the public key PKpr etc. via NFC communication are examples of processes executed by the "acquisition unit" of the "application program" and the "terminal device".
[0073] (Modification 3) Instead of starting SoftAP at T14 in Figure 2, printer 100 may transition to becoming the Group Owner of the Wi-Fi Direct Wi-Fi standard. Wi-Fi Direct is a registered trademark of the Wi-Fi Alliance. In this modification, the wireless network formed by printer 100 operating as Group Owner is an example of a "specific wireless network". In another modification, instead of starting SoftAP at T14 in Figure 2, printer 100 may form an Adhoc network. In this modification, the Adhoc network is an example of a "specific wireless network".
[0074] (Modification 4) Instead of sending a printer CO containing the SSID "AAA" and PW "XXX" to the printer 100 at T112 in Figure 3, OS36A may send a printer CO containing a Signed-Connector for the printer, for example, a hash value, a group ID identifying the wireless network formed by AP6A, the public key of the printer 100, and a digital signature. Hereinafter, the Signed-Connector will be referred to as "SC". In this case, the printer 100 may broadcast a DPP Peer Discovery Req containing the above-mentioned printer SC at T115 in Figure 3 instead of the Probe Req. Similarly, the printer 100 may broadcast a DPP Peer Discovery Req containing a printer SC containing a group ID identifying the wireless network formed by AP6B at T140. The DPP Peer Discovery Req is a signal that requests the execution of authentication and the transmission of the other party's SC. If AP6B successfully authenticates the printer SC, it may generate a connection key and send a DPP Peer Discovery Res, including the AP6B SC, to the printer 100 via T142. If the printer 100 successfully authenticates the AP6B SC, it may generate the same connection key as described above. As a result, a Wi-Fi connection may be established between the printer 100 and AP6B. In this modified example, the printer CO, which includes the printer SC containing the group ID, etc., is an example of "first connection information".
[0075] (Modification 5) In Figure 3, the various communications performed between terminal 10A and printer 100 in T102 to T114 may be communications that follow a different method than DPP.
[0076] (Modification 6) The printer 100 may be configured to always operate as a SoftAP. In this modification, the "first state transition unit" of the "communication device" may be omitted. In another modification, the printer 100 may display the QR code at T14 in Figure 2 before the SoftAP is started. In other words, the timing at which the "output control unit" of the "communication device" outputs the code image to the output unit is not limited to the embodiment.
[0077] (Modification 7) The code information may include, for example, the basic service set identifier (BSSID) of the wireless network formed by the printer 100 operating as a SoftAP, instead of the SSID "CCC". In this modification, the BSSID is an example of "specific wireless network identification information". That is, "specific wireless network identification information" can be any information that identifies the wireless network formed by the printer 100.
[0078] (Modification 8) Printer 100 may omit the processing of T109. Generally speaking, the "second state transition unit" of the "communication device" may be omitted.
[0079] (Modification 9) Code information may be information written in a format different from the Bootstrapping Information Format.
[0080] (Modification 10) In the above embodiment, in case B, the printer 100 searched for APs present around the printer 100 (see T204 to T210 in Figure 4). In the modification, terminal 10B may search for APs present around terminal 10B.
[0081] (Modification 11) In the above embodiment, the processing of each step in Figures 2 to 4 is implemented by software (for example, OS36A, 36B, application 38, program 136), but at least one of these processes may be implemented by hardware such as a logic circuit.
[0082] 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.
[0083] 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 communication device, A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, An output control unit causes an output unit to output a code image representing code information including the public key of the communication device and specific network identification information that identifies a specific wireless network. In the first case where the public key included in the code information is used by the terminal device in response to the code image being captured by a terminal device different from the communication device, a first connection information receiving unit performs a predetermined communication using the public key with the terminal device via the Wi-Fi interface and receives first connection information from the terminal device. A first establishment unit that uses the first connection information to establish a Wi-Fi connection with the target access point via the Wi-Fi interface, In the second case where the specific network identification information contained in the code information is used by the terminal device in response to the code image being captured by the terminal device, a second establishment unit establishes a Wi-Fi connection with the terminal device via the Wi-Fi interface, A second connection information receiving unit that receives second connection information from the terminal device via the Wi-Fi interface using the Wi-Fi connection with the terminal device, A third establishment unit establishes a Wi-Fi connection with the target access point using the second connection information, A communication device equipped with the following features. (Item 2) The aforementioned predetermined communication is communication in accordance with the Device Provisioning Protocol (DPP) of the Wi-Fi standard. The aforementioned predetermined communication is Receiving an authentication request using the public key from the terminal device, Sending an authentication response to the terminal device, Sending a connection information request to the terminal device, Receiving the first connection information from the terminal device, Communication devices as described in item 1, including the devices described in item 1. (Item 3) The aforementioned communication device further, The communication device is equipped with a first state transition unit that transitions the operating state of the communication device from a non-master state, where it does not operate as a master station of the specific wireless network, to a master station state, where it operates as a master station. The communication device according to item 1 or 2, wherein the output control unit causes the communication device to output the code image to the output unit after the operating state of the communication device transitions from the non-master state to the master state. (Item 4) The communication device according to item 3, wherein the specific network identification information includes the Service Set Identifier (SSID) of the specific wireless network formed by the communication device acting as the master station. (Item 5) The aforementioned communication device further, The communication device according to item 3 or 4, wherein in the first case, and when a predetermined signal is received from the terminal device via the Wi-Fi interface, the communication device is further comprising a second state transition unit that transitions the operating state of the communication device from the master station state to the non-master station state. (Item 6) The communication device according to any one of items 1 to 5, wherein the code information includes a predetermined identifier written in accordance with the Bootstrapping Information Format specified in the Device Provisioning Protocol (DPP) of the Wi-Fi standard, and the public key written following the predetermined identifier. (Item 7) In the case of the second instance described above, the target access point is one of the access points found by the communication device or terminal device searching, as described in any one of items 1 to 6. (Item 8) A program for an application for a terminal device, The aforementioned terminal device is A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, Computers and, Equipped with, The aforementioned application program controls the computer as follows: An acquisition unit that acquires specific information relating to a communication device, which includes the public key of the communication device and specific network identification information that identifies a specific wireless network. When the aforementioned specific information is obtained, a determination unit determines whether the terminal device is capable of performing a predetermined communication using the public key, In the first case where it is determined that the terminal device is capable of performing the predetermined communication, a first supply unit supplies the public key to the OS program, wherein the OS program, upon obtaining the public key from the application program, performs the predetermined communication with the communication device via the Wi-Fi interface and transmits first connection information to the communication device, the first connection information being information for establishing a Wi-Fi connection between the communication device and the target access point, the first supply unit, In the second case where it is determined that the terminal device is unable to perform the predetermined communication, a second supply unit supplies the specific network identification information to the OS program, wherein the OS program, upon obtaining the specific network identification information from the application program, establishes a Wi-Fi connection with the communication device via the Wi-Fi interface using the specific network identification information, the second supply unit, A connection information transmission unit that transmits second connection information to the communication device via the Wi-Fi interface using the Wi-Fi connection with the communication device, wherein the second connection information is information for establishing a Wi-Fi connection between the communication device and the target access point, An application program that functions as such. (Item 9) The aforementioned predetermined communication is communication in accordance with the DPP (Device Provisioning Protocol) of the Wi-Fi standard, The aforementioned predetermined communication is The authentication request using the public key is transmitted to the communication device. Receiving an authentication response from the aforementioned communication device, Receiving a connection information request from the aforementioned communication device, Transmitting the first connection information to the communication device, The application programs listed in item 8, including the application programs listed in item 8. (Item 10) The acquisition unit is an application program according to item 8 or 9, which acquires the specific information by decoding a code image representing the specific information when the code image representing the specific information is captured by the terminal device. (Item 11) The application program according to any one of items 8 to 10, wherein the specific network identification information includes the Service Set Identifier (SSID) of the specific wireless network formed by the communication device acting as a master station. (Item 12) A computer program for a communication device, The aforementioned communication device is A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, Computers and, Equipped with, The aforementioned computer program comprises the following components of the computer, namely: An output control unit causes an output unit to output a code image representing code information including the public key of the communication device and specific network identification information that identifies a specific wireless network. In the first case where the public key included in the code information is used by the terminal device in response to the code image being captured by a terminal device different from the communication device, a first connection information receiving unit performs a predetermined communication using the public key with the terminal device via the Wi-Fi interface and receives first connection information from the terminal device. A first establishment unit that uses the first connection information to establish a Wi-Fi connection with the target access point via the Wi-Fi interface, In the second case where the specific network identification information contained in the code information is used by the terminal device in response to the code image being captured by the terminal device, a second establishment unit establishes a Wi-Fi connection with the terminal device via the Wi-Fi interface, A second connection information receiving unit that receives second connection information from the terminal device via the Wi-Fi interface using the Wi-Fi connection with the terminal device, A third establishment unit establishes a Wi-Fi connection with the target access point using the second connection information, A computer program that functions as such. (Item 13) A terminal device, A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, An acquisition unit that acquires specific information relating to a communication device, which includes the public key of the communication device and specific network identification information that identifies a specific wireless network. When the aforementioned specific information is obtained, a determination unit determines whether or not the terminal device is capable of performing a predetermined communication using the public key, In the first case where it is determined that the terminal device is capable of performing the predetermined communication, a first connection information transmission unit performs the predetermined communication with the communication device via the Wi-Fi interface and transmits first connection information to the communication device, wherein the first connection information is information for establishing a Wi-Fi connection between the communication device and the target access point, In the second case where it is determined that the terminal device is unable to perform the predetermined communication, the establishment unit establishes a Wi-Fi connection with the communication device via the Wi-Fi interface using the specific network identification information, A second connection information transmission unit that transmits second connection information to the communication device via the Wi-Fi interface using the Wi-Fi connection with the communication device, wherein the second connection information is information for establishing a Wi-Fi connection between the communication device and the target access point, A terminal device equipped with the following features. [Explanation of Symbols]
[0084] 2: Communication system, 6A, 6B: AP, 10A, 10B: Terminal, 12A, 12B, 112: Operation unit, 14A, 14B, 114: Display unit, 16A, 16B, 116: Wi-Fi I / F, 18A, 18B: Camera, 30A, 30B, 130: Control unit, 32A, 32B, 132: CPU, 34A, 34B, 134: Memory, 36A, 36B: OS program, 38: Application program, 118: Print engine, 136: Program
Claims
1. A communication device, A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, An output control unit causes an output unit to output a code image representing code information including the public key of the communication device and specific network identification information that identifies a specific wireless network. In the first case where the public key included in the code information is used by the terminal device in response to the code image being captured by a terminal device different from the communication device, a first connection information receiving unit performs a predetermined communication using the public key with the terminal device via the Wi-Fi interface and receives first connection information from the terminal device. A first establishment unit establishes a Wi-Fi connection with the target access point via the Wi-Fi interface using the first connection information, In the second case where the specific network identification information contained in the code information is used by the terminal device in response to the code image being captured by the terminal device, a second establishment unit establishes a Wi-Fi connection with the terminal device via the Wi-Fi interface, A second connection information receiving unit that receives second connection information from the terminal device via the Wi-Fi interface using the Wi-Fi connection with the terminal device, A third establishment unit establishes a Wi-Fi connection with the target access point using the second connection information, A communication device equipped with the following features.
2. The aforementioned predetermined communication is communication in accordance with the Device Provisioning Protocol (DPP) of the Wi-Fi standard. The aforementioned predetermined communication is Receiving an authentication request using the public key from the terminal device, Sending an authentication response to the terminal device, Sending a connection information request to the terminal device, Receiving the first connection information from the terminal device, A communication device according to claim 1, including the following:
3. The aforementioned communication device further, The communication device is equipped with a first state transition unit that transitions the operating state of the communication device from a non-master state, where it does not operate as a master station of the specific wireless network, to a master station state, where it operates as a master station. The communication device according to claim 1, wherein the output control unit causes the code image to output to the output unit after the operating state of the communication device has transitioned from the non-master state to the master state.
4. The communication device according to claim 3, wherein the specific network identification information includes a Service Set Identifier (SSID) of the specific wireless network formed by the communication device operating as the master station.
5. The aforementioned communication device further, The communication device according to claim 3, wherein in the first case, and when a predetermined signal is received from the terminal device via the Wi-Fi interface, the communication device is further comprising a second state transition unit that transitions the operating state of the communication device from the master station state to the non-master station state.
6. The communication device according to claim 1, wherein the code information includes a predetermined identifier described in accordance with the Bootstrapping Information Format specified in the Device Provisioning Protocol (DPP) of the Wi-Fi standard, and the public key described following the predetermined identifier.
7. The communication device according to claim 1, in the second case, the target access point is one of the one or more access points found by the communication device or the terminal device through a search.
8. A program for an application for a terminal device, The aforementioned terminal device is A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, Computers and, Equipped with, The aforementioned application program controls the computer as follows: An acquisition unit that acquires specific information relating to a communication device, which includes the public key of the communication device and specific network identification information that identifies a specific wireless network. When the aforementioned specific information is obtained, a determination unit determines whether the terminal device is capable of performing a predetermined communication using the public key, In the first case where it is determined that the terminal device is capable of performing the predetermined communication, a first supply unit supplies the public key to the OS program, wherein the OS program, upon obtaining the public key from the application program, performs the predetermined communication with the communication device via the Wi-Fi interface and transmits first connection information to the communication device, the first connection information being information for establishing a Wi-Fi connection between the communication device and the target access point, the first supply unit, In the second case where it is determined that the terminal device is unable to perform the predetermined communication, a second supply unit supplies the specific network identification information to the OS program, wherein the OS program, upon obtaining the specific network identification information from the application program, establishes a Wi-Fi connection with the communication device via the Wi-Fi interface using the specific network identification information, the second supply unit A connection information transmission unit that transmits second connection information to the communication device via the Wi-Fi interface using the Wi-Fi connection with the communication device, wherein the second connection information is information for establishing a Wi-Fi connection between the communication device and the target access point, An application program that functions as such.
9. The aforementioned predetermined communication is communication in accordance with the Device Provisioning Protocol (DPP) of the Wi-Fi standard. The aforementioned predetermined communication is The authentication request using the public key is transmitted to the communication device. Receiving an authentication response from the aforementioned communication device, Receiving a connection information request from the aforementioned communication device, Transmitting the first connection information to the communication device, The application program according to claim 8, including the following:
10. The application program according to claim 8, wherein the acquisition unit acquires the specific information by decoding a code image representing the specific information when the code image representing the specific information is captured by the terminal device.
11. The application program according to claim 8, wherein the specific network identification information includes a Service Set Identifier (SSID) of the specific wireless network formed by the communication device acting as a master station.
12. A computer program for a communication device, The aforementioned communication device is A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, Computers and, Equipped with, The aforementioned computer program comprises the following components of the computer, namely: An output control unit causes an output unit to output a code image representing code information including the public key of the communication device and specific network identification information that identifies a specific wireless network. In the first case where the public key included in the code information is used by the terminal device in response to the code image being captured by a terminal device different from the communication device, a first connection information receiving unit performs a predetermined communication using the public key with the terminal device via the Wi-Fi interface and receives first connection information from the terminal device. A first establishment unit establishes a Wi-Fi connection with the target access point via the Wi-Fi interface using the first connection information, In the second case where the specific network identification information contained in the code information is used by the terminal device in response to the code image being captured by the terminal device, a second establishment unit establishes a Wi-Fi connection with the terminal device via the Wi-Fi interface, A second connection information receiving unit that receives second connection information from the terminal device via the Wi-Fi interface using the Wi-Fi connection with the terminal device, A third establishment unit establishes a Wi-Fi connection with the target access point using the second connection information, A computer program that functions as such.
13. A terminal device, A Wi-Fi interface for performing wireless communication in accordance with the Wi-Fi standard, An acquisition unit that acquires specific information relating to a communication device, which includes the public key of the communication device and specific network identification information that identifies a specific wireless network. When the aforementioned specific information is obtained, a determination unit determines whether or not the terminal device is capable of performing a predetermined communication using the public key, In the first case where it is determined that the terminal device is capable of performing the predetermined communication, a first connection information transmission unit performs the predetermined communication with the communication device via the Wi-Fi interface and transmits first connection information to the communication device, wherein the first connection information is information for establishing a Wi-Fi connection between the communication device and the target access point, In the second case where it is determined that the terminal device is unable to perform the predetermined communication, the establishment unit establishes a Wi-Fi connection with the communication device via the Wi-Fi interface using the specific network identification information, A second connection information transmission unit that transmits second connection information to the communication device via the Wi-Fi interface using the Wi-Fi connection with the communication device, wherein the second connection information is information for establishing a Wi-Fi connection between the communication device and the target access point. A terminal device equipped with the following features.