Communication device, its control method, program and storage medium
The communication device improves direct connection convenience by incorporating infrastructure and direct connection means with security-based control, addressing the need for enhanced direct device connectivity.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2024-11-29
- Publication Date
- 2026-06-10
AI Technical Summary
There is a growing demand for improved convenience when communication devices connect directly to external devices without going through an external access point.
A communication device equipped with infrastructure connection means, direct connection means, first acquisition means, and control means to facilitate secure direct connections based on acquired security method information.
Enhances the convenience of direct connections between communication devices.
Smart Images

Figure 2026095126000001_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to a communication device, a control method thereof, a program, and a storage medium.
Background Art
[0002] In recent years, with the increase in the amount of data to be communicated, the development of communication technologies such as wireless LAN (Local Area Network) has been promoted. As the main communication standards for wireless LAN, the IEEE (Institute of Electrical and Electronic Engineers) 802.11 standard series is known. The IEEE 802.11 standard series includes IEEE 802.11a / b / g / n / ac / ax standards and the like. For example, in the latest IEEE 802.11ax standard, by using OFDMA (Orthogonal Frequency-Division Multiple Access), technologies for achieving a high peak throughput of up to 9.6 gigabits per second (Gbps) and improving the communication speed under congested conditions have been standardized. OFDMA is an abbreviation for Orthogonal Frequency-Division Multiple Access.
[0003] On the other hand, the Wi-Fi Alliance has formulated a program for authenticating wireless LAN devices. For example, the WFD standard that defines a procedure for establishing a communication link between wireless LAN stations (STAs) by exchanging (sharing) communication parameters between the STAs without going through an access point (AP) has been formulated. WFD is an abbreviation for Wi-Fi Direct (registered trademark).
[0004] Also, the Wi-Fi Aware standard, which is a standard for exploring services provided by a device, has been formulated. For example, Patent Document 1 describes detecting a communication terminal using the provisions of the Wi-Fi Aware standard.
Prior Art Documents
Patent Documents
[0005] [Patent Document 1] Japanese Patent Publication No. 2019-201427 [Overview of the Initiative] [Problems that the invention aims to solve]
[0006] Incidentally, as technology that allows communication devices to connect directly to external devices without going through an external access point becomes more widespread, there is a growing demand for improved convenience when communication devices connect directly to external devices.
[0007] The present invention aims to improve the convenience of communication devices when they make direct connections with external devices. [Means for solving the problem]
[0008] The present invention provides a communication device comprising: infrastructure connection means for connecting to an external device via an external access point; direct connection means for connecting to an external device directly without going through an external access point; first acquisition means for acquiring information about the security method used in the infrastructure connection by the infrastructure connection means; and control means for controlling the direct connection means to perform the direct connection based on the information about the security method acquired by the first acquisition means. [Effects of the Invention]
[0009] According to the present invention, the convenience of a communication device when it makes a direct connection with an external device can be improved. [Brief explanation of the drawing]
[0010] [Figure 1] This figure shows an example of a system configuration. [Figure 2] This diagram shows an example of an MFP configuration. [Figure 3] This diagram shows the screen displayed on the MFP's operation display unit. [Figure 4]This diagram shows the configuration of a mobile terminal device. [Figure 5] This is a diagram showing the configuration of an access point. [Figure 6] This is a sequence diagram illustrating the connection process for the WFD standard. [Figure 7] This is a sequence diagram illustrating the connection process for the WFD standard. [Figure 8] This diagram shows the screen displayed on the MFP's operation display unit. [Figure 9] This diagram shows the screen displayed on the MFP's operation display unit. [Figure 10] This diagram shows the screen displayed on the MFP's operation display unit. [Figure 11] This flowchart shows the processes performed by the MFP. [Figure 12] This flowchart shows the processes performed by the MFP. [Figure 13] This flowchart shows the processes performed by the MFP. [Modes for carrying out the invention]
[0011] The embodiments will be described in detail below with reference to the attached drawings. Note that the following embodiments do not limit the invention as defined in the claims. While the embodiments describe multiple features, not all of these features are essential to the invention, and the features may be combined in any way. Furthermore, in the attached drawings, identical or similar configurations are given the same reference numerals, and redundant descriptions are omitted.
[0012] <First Embodiment> (System Configuration) Fig. 1 shows a configuration example of the system according to this embodiment. In one example, this system is a wireless communication system in which a plurality of communication devices can communicate with each other wirelessly. In the example of Fig. 1, as communication devices, it includes a portable terminal device 104, an MFP 100, an AP 101 which is an access point, a DHCP server 103, a DNS server 105, and a network 110. The portable terminal device 104 is a device having a wireless communication function such as a wireless LAN. Hereinafter, the wireless LAN may be referred to as WLAN. The portable terminal device 104 can be a personal information terminal such as a PDA (Personal Digital Assistant), a mobile phone (smartphone), a digital camera, a personal computer, etc.
[0013] The MFP 100 is a printing device having a printing function, and may further have a reading function (scanner), a FAX function, and a telephone function. Also, the MFP 100 of this embodiment has a communication function capable of wireless communication with the portable terminal device 104. In this embodiment, the case where the MFP 100 is used as an example is described, but it is not limited thereto. For example, a scanner device, a projector, a portable terminal, a smartphone, a notebook PC, a tablet terminal, a PDA, a digital camera, a music playback device, a TV, a smart speaker, etc., each having a communication function, may be used instead of the MFP 100. Note that MFP is an acronym for Multi Function Peripheral (multifunctional peripheral device).
[0014] AP101 is provided separately (externally) from the mobile terminal device 104 and the MFP100 and operates as a WLAN base station device. A communication device having a WLAN communication function can perform communication in the infrastructure mode of the WLAN via AP101. Hereinafter, the access point may be referred to as "AP". Also, the infrastructure mode may be referred to as the "wireless infrastructure mode". AP101 performs wireless communication with a communication device that has permitted (authenticated) connection to itself, and relays wireless communication between that communication device and other communication devices. Also, AP101 can relay communication between, for example, a communication device connected to a wired communication network and another communication device wirelessly connected to AP101.
[0015] The DHCP server 103 is connected to the MFP100 via AP101 and the network 110, and provides services to the MFP100 by responding to requests from the MFP100. In FIG. 1, the DHCP server 103 is described as being connected as a device separate from AP101, but AP101 may have a DHCP server function. The DNS server 105 is connected to the MFP100 and the mobile terminal device 104 via AP101 and the network 110, and provides services for name resolution by responding to requests from the MFP100 and the mobile terminal device 104. Here, the network 110 may be the so-called Internet, or may be a network closed within a company or a mobile phone network.
[0016] (External Configuration of MFP) Figure 2(a) shows an example of the external configuration of the MFP100. The MFP100 includes, for example, a document tray 201, a document cover 202, a paper input slot 203, a paper output slot 204, and an operation display unit 205. The document tray 201 is a platform on which the document to be scanned is placed. The document cover 202 is a cover that holds down the document placed on the document tray 201 and prevents light from the light source that illuminates the document during scanning from leaking to the outside. The paper input slot 203 is an input slot that can accommodate paper of various sizes. The paper output slot 204 is an output slot for discharging paper after printing is complete. Paper set in the paper input slot 203 is transported to the printing unit one sheet at a time, and after printing is performed in the printing unit, it is discharged from the paper output slot 204. The operation display unit 205 is configured to include keys such as character input keys, cursor keys, select keys, and cancel keys, as well as LEDs and LCDs, and is configured to accept user input for activating various functions and setting various settings as an MFP. The operation display unit 205 may also be configured to include a touch panel display. The MFP 100 has a wireless communication function via WLAN, and although it does not necessarily need to be visible from the outside, it is configured to include a wireless communication antenna 206 for this wireless communication. Like the mobile terminal device 104, the MFP 100 can also perform wireless communication via WLAN in the 2.4GHz, 5GHz, and 6GHz frequency bands.
[0017] (MFP configuration) Figure 2(b) shows an example configuration of the MFP100. The MFP100 consists of a main unit 211 that performs the main control of the device itself, and a wireless unit 226 which is a communication module that performs WLAN communication using at least one common antenna. The MFP100 also consists of a modem 229 for wired communication, for example. The main unit 211 consists of, for example, a CPU 212 (central processing unit), ROM 213, RAM 214, non-volatile memory 215, image memory 216, read control unit 217, data conversion unit 218, read unit 219, and code decoding unit 221. The main unit 211 is simply a unit that includes functional blocks other than the wireless unit 226 and modem 229. The main unit 211 also includes, for example, a printing unit 222, a paper feeding unit 223, a print control unit 224, and an operation display unit 220. The functional units within the main unit 211 are interconnected via a system bus 230 managed by the CPU 212. Furthermore, the main unit 211 is connected to the wireless unit 226 via a dedicated bus 225, for example, and the main unit 211 is connected to the modem 229 via a bus 228, for example.
[0018] The CPU 212 is a system control unit including at least one processor, and controls the entire MFP 100. In one example, the processing of the MFP 100 described below is realized by the CPU 212 executing a program stored in the ROM 213. Dedicated hardware may be provided for each process. The ROM 213 stores control programs and embedded OS programs that the CPU 212 executes. In this embodiment, the CPU 212 performs software control such as scheduling and task switching by executing each control program stored in the ROM 213 under the management of the embedded OS, which is also stored in the ROM 213.
[0019] RAM214 is composed of SRAM or the like. RAM214 stores data such as program control variables, user-registered settings, and MFP100 management data. RAM214 can also be used as a buffer for various work. Non-volatile memory 215 is composed of memory such as flash memory and continues to store data even when the MFP100 is powered off. Image memory 216 is composed of memory such as DRAM. Image memory 216 stores image data received via the wireless unit 226 and image data processed by the code decoding processing unit 221. Note that the memory configuration of MFP100 is not limited to the above configuration. The data conversion unit 218 performs analysis of various data formats and conversion from image data to print data.
[0020] The reading control unit 217 controls the reading unit 219 (for example, a CIS (contact image sensor)) to optically read the document placed on the document table 201. The reading control unit 217 converts the image obtained by optically reading the document into electrical image data (image signal) and outputs it. At this time, the reading control unit 217 may perform various image processing such as binarization and halftone processing before outputting the image data.
[0021] The operation display unit 220 is the same as the operation display unit 205 described with reference to Figure 2(a), and performs functions such as displaying information on the display based on display control by the CPU 212 and generating signals in response to user operations.
[0022] The encoding and decoding processing unit 221 performs encoding and decoding processing, as well as scaling processing, for image data (JPEG, PNG, etc.) handled by the MFP100.
[0023] The paper feed unit 223 holds paper for printing. The paper feed unit 223 can supply the set paper under the control of the print control unit 224. The paper feed unit 223 may include multiple paper feed units to hold multiple types of paper in one device, and the print control unit 224 can control which paper feed unit to use for feeding.
[0024] The print control unit 224 applies various image processing to the image data to be printed, such as smoothing, print density correction, and color correction, and outputs the processed image data to the print unit 222. The print unit 222 is configured to perform, for example, inkjet printing, and ejects ink supplied from the ink tanks from the print head to record an image on a recording medium such as paper. The print unit 222 may also be configured to perform other printing processes such as electrophotography. Furthermore, the print control unit 224 can periodically read information from the print unit 222 and update status information, including the remaining amount of ink in the ink tanks and the status of the print head, which is stored in the RAM 214.
[0025] The wireless unit 226 is a unit capable of providing WLAN communication functionality, and can provide similar functionality to, for example, the WLAN unit 429 of the mobile terminal device 104 when combined with it. That is, the wireless unit 226 converts data into packets according to the WLAN standard and transmits the packets to other devices, and also restores packets from other external devices to their original data and outputs it to the CPU 212. The wireless unit 226 is capable of communication as a station compliant with the IEEE 802.11 standard series. In particular, it is capable of communication as a station compliant with IEEE 802.11a / b / g / n / ac / ax. Hereafter, a station may be referred to as an STA.
[0026] The wireless unit 226 supports IEEE 802.11ax, i.e., Wi-Fi 6 (trademark), and can perform processing compliant with IEEE 802.11ax. In other words, the MFP100 can operate (process) as an STA that supports (complies with) OFDMA, or as an STA that supports (complies with) TWT, or both. OFDMA stands for Orthogonal Frequency-Division Multiple Access. TWT stands for Target Wake Time. Because it supports TWT, the timing of data communication from the base station to the STA is adjusted. The wireless unit 226 (MFP100), acting as an STA, switches its communication function to sleep mode when there is no need to wait for signal reception. This reduces power consumption. In addition, the wireless unit 226 also supports Wi-Fi 6E (trademark). That is, it can communicate in the 6GHz band (5.925GHz~7.125GHz). The 6GHz band does not have the same frequency bands where Dynamic Frequency Selection (DFS), which exists in the 5GHz band, is performed. Therefore, communication in the 6GHz band does not experience communication interruptions due to DFS waiting time, and a more comfortable communication experience can be expected. Although processing compliant with IEEE802.11ax is performed here, the mobile terminal device 104 and MFP100 may operate in compliance with other standards in the IEEE802.11 series. For example, they may be compliant with standards later than IEEE802.11be.
[0027] Furthermore, the mobile terminal device 104 and MFP 100 are capable of P2P (WLAN) communication based on WFD, and the wireless unit 226 has software access point (soft AP) functionality or group owner functionality. That is, the wireless unit 226 can build a P2P communication network and determine the channel to be used for P2P communication. WFD here is based on the standard developed by the Wi-Fi Alliance. The wireless unit 226 can also operate as a WFD client.
[0028] (MFP operation display) Figure 3 schematically shows an example of the screen display on the display (touch panel display) included in the operation display unit 220 of the MFP100. Figure 3(a) is an example of the home screen displayed when the MFP100 is powered on and no operations such as printing or scanning are being performed (idle state, standby state). In Figure 3(a), display items (menu items) corresponding to copy, scan, and cloud are displayed. Cloud is a menu item related to cloud functions that utilize internet communication. By selecting any of the menu items through key operations or touch panel operations, the MFP100 can start executing the corresponding settings or functions. The MFP100 can seamlessly display a screen different from Figure 3(a) by accepting key operations or touch panel operations on the home screen of Figure 3(a).
[0029] Figure 3(b) shows an example of another part of the home screen, which is accessed by performing an action (such as sliding left or right) to display other pages of the home screen from the state shown in Figure 3(a). In Figure 3(b), display items (menu items) corresponding to communication settings, print, and photo are shown. When any of these menu items is selected, the function corresponding to the selected menu item, namely the print function, photo function, or communication settings, is executed.
[0030] Figure 3(c) shows an example of the communication settings menu screen displayed when communication settings are selected in the screen shown in Figure 3(b). The communication settings menu screen is a network settings screen that displays menu items (options) such as "Wireless LAN," "Wired LAN," "Wireless Direct," "Bluetooth," and "Common Settings." "Wireless LAN," "Wired LAN," and "Wireless Direct" are menu items for LAN settings, and from these items, users can configure settings such as wired connection settings, enabling / disabling wireless infrastructure mode, and enabling / disabling P2P modes such as WFD and soft AP mode. If the "Wireless LAN" item is selected and wireless LAN is enabled by the user, wireless infrastructure mode is enabled. If the "Wireless Direct" item is selected and wireless direct is enabled by the user, P2P (WLAN) mode is enabled. In addition, a common settings menu for each connection type is also displayed on this screen. Furthermore, the user can configure settings such as the wireless LAN frequency band and frequency channel from this screen.
[0031] (External configuration of a mobile terminal device) Figure 4(a) shows an example of the external configuration of the mobile terminal device 104. In this embodiment, as an example, the case where the mobile terminal device 104 is a general-purpose smartphone is shown. The mobile terminal device 104 is composed of, for example, a display unit 402, an operation unit 403, and a power key 404. The display unit 402 is a display that includes, for example, an LCD (Liquid Crystal Display) type display mechanism. The display unit 402 may also display information using, for example, an LED (Light Emitting Diode). In addition to or instead of the display unit 402, the mobile terminal device 104 may also have a function to output information by voice. The operation unit 403 is composed of hard keys such as keys and buttons, a touch panel, etc., for detecting user operations. In this example, since the information display on the display unit 402 and the reception of user operations by the operation unit 403 are performed using a common touch panel display, the display unit 402 and the operation unit 403 are realized by a single device. In this case, for example, button icons or a software keyboard are displayed using the display function of the display unit 402, and the operation reception function of the operation unit 403 detects when the user touches these areas. Alternatively, the display unit 402 and the operation unit 403 may be separated, with separate hardware for display and hardware for operation reception. The power key 404 is a hard key for receiving user input to turn the power of the mobile terminal device 104 on or off.
[0032] The mobile terminal device 104 does not necessarily need to be visible from its external appearance, but it has a WLAN unit 401 that provides WLAN communication functionality. The WLAN unit 401 is configured to perform data (packet) communication in a WLAN system compliant with, for example, the IEEE 802.11 standard series (IEEE 802.11a / b / g / n / ac / ax, etc.). It is also capable of communication as an AP compatible with Wi-Fi Agile Multiband (trademark). However, it is not limited to this, and the WLAN unit 401 may be capable of performing communication in WLAN systems compliant with other standards. In this example, the WLAN unit 401 is assumed to be capable of communication in the 2.4GHz, 5GHz, and 6GHz frequency bands. Furthermore, the WLAN unit 401 is assumed to be capable of performing WFD-based communication, communication in soft AP mode, communication in wireless infrastructure mode, etc. The operation in these modes will be described later.
[0033] (Configuration of mobile terminal devices) Figure 4(b) shows an example of the configuration of the mobile terminal device 104. In one example, the mobile terminal device 104 has a main unit 411 that performs the main control of the device itself, and a WLAN unit 429 that performs WLAN communication. The main unit 411 is simply a unit that includes functional blocks other than the WLAN unit 429. The main unit 411 includes, for example, a CPU 412, ROM 413, RAM 414, image memory 415, data conversion unit 416, telephone unit 417, GPS 419, camera unit 421, non-volatile memory 422, data storage unit 423, speaker unit 424, and power supply unit 425. Here, CPU is an acronym for Central Processing Unit, ROM for Read Only Memory, RAM for Random Access Memory, and GPS for Global Positioning System. The mobile terminal device 104 also includes a display unit 420 and an operation unit 418. The functional parts within these main units 411 are interconnected via a system bus 628 managed by the CPU 412. Furthermore, the main unit 411 and the WLAN unit 429 (the aforementioned WLAN unit 401) are connected, for example, via a dedicated bus 426.
[0034] The CPU 412 is a system control unit including at least one processor, and controls the entire mobile terminal device 104. In one example, the processing of the mobile terminal device 104 described below is realized by the CPU 412 executing a program stored in the ROM 413. Dedicated hardware may be provided for each process. The ROM 413 stores control programs and embedded operating system (OS) programs that the CPU 412 executes. In this embodiment, the CPU 412 performs software control such as scheduling and task switching by executing each control program stored in the ROM 413 under the management of the embedded OS, which is also stored in the ROM 413.
[0035] RAM 414 is composed of SRAM (Static RAM) or the like. RAM 414 stores data such as program control variables, user-registered settings, and management data for the mobile terminal device 104. RAM 414 can also be used as a buffer for various tasks. Image memory 415 is composed of memory such as DRAM (Dynamic RAM). Image memory 415 temporarily stores image data received via the WLAN unit 429 and image data read from the data storage unit 423 for processing by the CPU 412. Non-volatile memory 422 is composed of memory such as flash memory, and continues to store data even when the power to the mobile terminal device 104 is turned off. Note that the memory configuration of the mobile terminal device 104 is not limited to the above configuration. For example, image memory 415 and RAM 414 may be shared, or data backup may be performed using the data storage unit 423. In this embodiment, DRAM is given as an example of image memory 415, but other storage media such as hard disks or non-volatile memory may be used.
[0036] The data conversion unit 416 performs data analysis of various formats and data conversions such as color conversion and image conversion. The telephone unit 417 controls the telephone line and processes the voice data input and output via the speaker unit 424 to enable telephone communication. The GPS 419 receives radio waves transmitted from satellites and acquires location information such as the current latitude and longitude of the mobile terminal device 104.
[0037] The camera unit 421 has the function of electronically recording and encoding images input through the lens. Image data obtained by imaging with the camera unit 421 is stored in the data storage unit 423. The speaker unit 424 has the function of inputting or outputting sound for telephone functions, and also controls functions such as alarm notifications. The power supply unit 425 is, for example, a portable battery and controls the power supply to the device. Power states include, for example, a battery-dead state where there is no remaining battery power, a power-off state where the power key 404 is not pressed, a normal startup state, and a power-saving state where the device is running but power-saving.
[0038] The display unit 420 is the same as the display unit 402 described with reference to Figure 4(a), and, based on the control of the CPU 412, displays various input operations, the operating status of the MFP 100, and the status status. The operation unit 418 is the same as the operation unit 403 described with reference to Figure 4(a), and, upon receiving a user operation, performs control such as generating an electrical signal corresponding to that operation and outputting it to the CPU 412.
[0039] The mobile terminal device 104 uses a WLAN unit 429 to perform wireless communication and communicate data with other devices such as the MFP 100. The WLAN unit 429 converts data into packets and transmits them to other devices. The WLAN unit 429 also restores packets from external devices back to their original data and outputs it to the CPU 412. The WLAN unit 429 is a unit that enables communication compliant with WLAN standards. The WLAN unit 429 can operate in parallel in at least two communication modes, including wireless infrastructure mode and P2P (WLAN) mode. The frequency bands used in these communication modes may be limited by the hardware functions and performance.
[0040] (Access point configuration) Figure 5 is a block diagram showing the configuration of AP101, which has wireless LAN access point functionality. It consists of a main unit 510 that controls AP101, a wireless LAN unit 516, a wired LAN unit 518, and operation buttons 520. The main unit 510 is simply a unit that includes functional blocks other than the wireless LAN unit 516, the wired LAN unit 518, and the operation buttons 520.
[0041] The microprocessor-type CPU 511 located in the main unit 510 operates according to the control program stored in the ROM-type program memory 513, which is connected via the internal bus 512, and the contents of the RAM-type data memory 514. The CPU 511 performs wireless LAN communication with other communication terminal devices by controlling the wireless LAN unit 516 through the wireless LAN communication control unit 515. The CPU 511 also performs wired LAN communication with other communication terminal devices by controlling the wired LAN unit 518 through the wired LAN communication control unit 517. The CPU 511 can accept user operations via the operation buttons 520 by controlling the operation control circuit 519. The CPU 511 includes at least one processor.
[0042] The AP101 also includes an interference wave detection unit 521 and a channel changing unit 522. The interference wave detection unit 521 performs interference wave detection processing when wireless communication is being performed in a band where DFS (Dynamic Frequency Selection) is implemented. The channel changing unit 522 performs channel changing processing when an interference wave is detected while wireless communication is being performed in a band where DFS is implemented, and when it is necessary to immediately switch to an available channel.
[0043] (P2P communication method) Next, we will outline the P2P (WLAN) communication method, which allows devices to communicate directly wirelessly with each other without the need for an external access point. P2P (WLAN) communication can be implemented using multiple methods; for example, a communication device can support multiple modes for P2P (WLAN) communication and selectively use one of these modes to perform P2P communication (WLAN).
[0044] Two P2P modes are assumed: • Soft AP mode • Wi-Fi Direct (WFD) mode A communication device capable of performing P2P communication may be configured to support at least one of these modes. On the other hand, a communication device capable of performing P2P communication is not required to support all of these modes, but may be configured to support only some of them.
[0045] A communication device with WFD communication capabilities (for example, a mobile terminal device 104) receives user input via its control panel, thereby calling a (possibly dedicated) application to implement its communication functionality. The communication device then displays a UI (user interface) screen provided by the application to prompt user input, and can perform WFD communication based on the received user input.
[0046] ● Soft AP mode In soft AP mode, a communication device (e.g., mobile terminal device 104) acts as a client requesting various services. The other communication device (e.g., MFP100) acts as a soft AP capable of performing WLAN AP functions through software configuration. The commands and parameters transmitted and received when establishing a wireless connection between the client and the soft AP only need to be those specified in the Wi-Fi® standard, so their explanation is omitted here. In addition, the MFP100 operating in soft AP mode determines the frequency band and frequency channel as the master station. Therefore, the MFP100 can select which frequency band to use from 2.4GHz, 5GHz, or 6GHz, and which frequency channel to use within that frequency band. In soft AP mode, there is no negotiation to determine roles, and compliance with the WFD standard established by the Wi-Fi Alliance is not required.
[0047] ●WFD mode In this embodiment, the mobile terminal device 104 and the MFP 100 support the functionality exposed as Wi-Fi Direct. Wi-Fi Direct is a function that enables Wi-Fi Direct-compatible devices to establish their own Wi-Fi network without the need for an internet connection. Specifically, Wi-Fi Direct-compatible devices such as the mobile terminal device 104 and the MFP 100 can connect directly to each other even in environments without AP 101 or similar devices. The MFP 100 may be configured to start permanently as the master station in WFD mode (Autonomous Group Owner). In the following, Autonomous Group Owner may be referred to as Auto GO. In this case, the GO Negotiation process to determine the role is unnecessary. Also, in this case, the MFP 100 determines the frequency band and frequency channel as the master station. Therefore, the MFP 100 can select which frequency band to use from 2.4GHz, 5GHz, or 6GHz, and which frequency channel to use within that frequency band. In WFD mode, the system may also be configured to perform GO Negotiation, which determines which device will act as the group owner and which as the client.
[0048] (Wireless infrastructure mode) In wireless infrastructure mode, communication devices that communicate with each other (for example, the mobile terminal device 104 and the MFP 100) are connected to an external access point (AP) that manages the network (for example, AP 101), and communication between communication devices takes place via that AP. In other words, communication between communication devices is performed via the network established by the external AP. When the mobile terminal device 104 and the MFP 100 each discover AP 101, send connection requests to AP 101, and connect, communication between these communication devices in wireless infrastructure mode via AP 101 becomes possible. Note that multiple communication devices may be connected to separate APs. In this case, data transfer between APs enables communication between communication devices. The commands and parameters sent and received during communication between each communication device via the access point can be those specified in the Wi-Fi standard, so their explanation is omitted here. Also, in this case, AP 101 determines the frequency band and frequency channel. Therefore, the AP101 can select which frequency band to use from 2.4GHz, 5GHz, or 6GHz, and which frequency channel to use within that frequency band.
[0049] The following explains that the WFD standard has two methods: a first standard method and a second standard method that differs from the first standard method. In other words, the WFD standard has multiple methods with different standard versions. Note that the second standard method has a newer standard version than the first method. Here, the first standard method will be called WFD R1 (Release 1), and the second standard method will be called WFD R2 (Release 2). In order to establish a wireless direct connection (hereinafter) using WFD between the MFP100 and the mobile terminal device 104, it is necessary to perform the connection process of the WFD standard. The connection process of the WFD standard includes a first connection process using the first standard method and a second connection process using the second standard method. The following explains each connection process. WFD R1 and WFD R2 differ in their methods of device discovery and parameter sharing. In this embodiment, parameter sharing includes at least one of the following: the transmission and reception (exchange) of parameters through communication between devices, and the recognition of parameter information by each device through user operations such as reading a QR code (registered trademark).
[0050] (First connection process according to the first standard method) The mobile terminal 104 and MFP100 support the functionality known as Wi-Fi Direct. Wi-Fi Direct is a function that allows Wi-Fi Direct-compatible devices to establish their own Wi-Fi network without the need for an internet connection. Specifically, Wi-Fi Direct-compatible devices such as the mobile terminal 104 and MFP100 can connect directly to each other even in environments without AP101 or similar equipment.
[0051] Figure 6 is a sequence diagram of the process by which the mobile terminal device 104 and the MFP 100 connect in accordance with the WFD standard. Here, the processing sequence for WFD R1 is shown. In this sequence, the processing performed by each device is realized by the CPU of each device reading various programs stored in the memory such as ROM into RAM and executing them.
[0052] For example, the mobile terminal device 104 and the MFP 100 begin processing a sequence when they receive a WFD start command from the user. Upon receiving the WFD start command from the user, the mobile terminal device 104 and the MFP 100 search for the other device by repeatedly switching between the Listen state and the Search state. There may be a period before these states in which each channel is scanned. In the Listen state, for example, channel 1 in 2.4 GHz is selected and awaits Probe Request frames from other communication devices. In the Search state, Probe Request frames are sent while switching between frequency channels (e.g., channel 1, channel 6, channel 11) and awaits Probe Response frames.
[0053] In S601, the mobile terminal device 104 sends a Probe Request frame to search for a WFD communication device. By sending a Probe Request frame, it searches for the other device being searched. Here, the searching communication device is the mobile terminal device 104, and the other device being searched is the MFP 100. The Probe Request frame has the WFD attribute (P2P IE), which identifies the target of the search as a WFD communication device.
[0054] In S602, when MFP100 receives a Probe Request frame, it transmits a Probe Response frame. The mobile terminal device 104 detects MFP100, which is the WFD communication partner (communication destination), upon receiving the Probe Response frame transmitted by MFP100. Note that the Probe Request frame and Probe Response frame may include P2P IE and Multi-Link elements. Multi-Link elements may include communication parameters used for multi-link communication as defined in the IEEE 802.11be standard. This makes it possible to set up multiple links between communication devices with a single connection procedure. Thus, WFD R1 can detect the presence of other communication devices using a first search process that utilizes Probe Request / Probe Response frames. The first search process described above is the search sequence of WFD R1.
[0055] In S603, the mobile terminal device 104 and the MFP 100 perform GO Negotiation processing. GO Negotiation processing determines which of the mobile terminal device 104 and the MFP 100 will be the master unit. The channel to be used for wireless communication may also be determined directly during GO Negotiation. During GO Negotiation processing, the mobile terminal device 104 and the MFP 100 transmit or receive GO Negotiation Request / GO Negotiation Response frames containing an intent value indicating the degree to which they want to become the GO. The GO Negotiation Request / GO Negotiation Response frames determine the roles of P2P group owner (GO) and P2P client. The MFP 100 may also be configured to start permanently as the master unit (GO) in WFD mode (Autonomous Group Owner). In this case, GO Negotiation processing to determine the roles becomes unnecessary. The MFP 100 may also be configured to execute GO Negotiation processing but always operate as the GO by setting its intent value to the maximum of 15. In this case, the MFP100, acting as the master station, determines the frequency band and frequency channel to be used for wireless communication. Therefore, the MFP100 can select whether to use the 2.4GHz or 5GHz frequency band, and which frequency channel to use within that frequency band.
[0056] In S604, the mobile terminal device 104 and the MFP 100 share communication parameters through WPS (Wi-Fi Protected Setup) processing. These communication parameters may include parameters used for wireless communication, such as SSID (Service Set Identifier), encryption method, encryption key, authentication method, AKM, BSSID, and MAC Address. AKM stands for Authentication and Key Management. AKM indicates the authentication protocol and key exchange algorithm used for wireless communication. For example, if AKM is "SAE," the communication parameters may include a password for connecting to an AP or GO compatible with WPA (Wi-Fi Protected Access) 3. If AKM is "psk," the communication parameters may include a PSK (Pre-Shared Key) / passphrase for connecting to an AP or GO compatible with WPA2. If AKM is "1X," it may include an ID, password, public key, etc., for connecting to an AP compatible with WPA-Enterprise. The password and PSK / passphrase are encryption keys used when performing authentication and key exchange based on WPA or IEEE 802.11. The WPS processing in S604 is the sequence for sharing communication parameters in WFD R1. Furthermore, from processing S604 onwards, the channel used for communication may be changed from the channel used in S601-603.
[0057] In S605, when the MFP100 determines that it will operate as a GO, it begins transmitting a Beacon frame. The Beacon frame may contain communication parameters for communicating with the MFP100. The Beacon frame may also contain information elements (IE) and attributes as defined in the WFD standard. This allows communication devices other than the mobile terminal device 104 to detect the presence of the MFP100 and establish a direct wireless communication connection with it. For example, other communication devices can detect the presence of the MFP100 by receiving a Beacon frame containing information defined in the WFD standard.
[0058] In S606, the mobile terminal device 104 sends a Probe Request frame to perform the connection procedure with the MFP 100. In S607, when the MFP 100 receives the Probe Request frame, it sends a Probe Response frame.
[0059] In S608, the mobile terminal device 104 transmits an Authentication frame. In S609, when the MFP 100 receives an Authentication frame, it transmits an Authentication frame.
[0060] In S610, when the mobile terminal device 104 receives an Authentication frame, it sends an Association Request frame. In S611, when the MFP 100 receives an Association Request frame, it sends an Association Response frame.
[0061] In S612, the mobile terminal device 104 and the MFP 100 perform a 4-way handshake.
[0062] In the first standard's method, the connection between the mobile terminal device 104 and the MFP 100 is established by performing the connection procedure described above. Although not shown in the sequence above, the mobile terminal device 104 and the MFP 100 may also send or receive Provision Discovery Request / Provision Discovery Response frames. Furthermore, the processing of the mobile terminal device 104 and the MFP 100 as described above may also be reversed.
[0063] (Second connection process according to the second standard) Figure 7 is a sequence diagram of the process by which the mobile terminal device 104 and the MFP 100 connect in accordance with the WFD standard. Here, the processing sequence for WFD R2 is shown. In this sequence, the processing performed by each device is realized by the CPU of each device reading various programs stored in the memory such as ROM into RAM and executing them.
[0064] For example, the mobile terminal device 104 and the MFP 100 start processing the sequence when they receive a WFD start command from the user. The WFD R2 search sequence performs a second search process. An example of the search procedure by the second search process is shown below. In this search procedure, each mobile terminal device 104 and MFP 100 performs processing based on whether it is a communication device on the service provider side or a communication device on the service request side, and detects other communication devices. Communication devices on the service provider side may be called Publisher, Listener, Advertiser, etc. Communication devices on the service request side may be called Subscriber, Searcher, Seeker, etc. For example, a communication device on the service request side may send a frame to detect other communication devices. Also, a communication device on the service provider side may receive and respond to frames sent by other communication devices. The role assigned to a communication device may be determined by a higher layer (service layer, etc.). Figure 7 shows an example in which the mobile terminal device 104 operates as a communication device on the service request side and the MFP 100 operates as a communication device on the service provider side. For example, the mobile terminal device 104 intermittently performs detection operations and transmits frames to detect other communication devices. In the second discovery process, the mechanism of the Wi-Fi Aware standard, for example, developed by the Wi-Fi Alliance, may be used. In other words, the frames communicated in the second discovery process may be frames defined in the Wi-Fi Aware standard. Furthermore, other service discovery protocols and methods, not limited to the Wi-Fi Aware standard, may also be used in the second discovery process.
[0065] In S701, the mobile terminal device 104 transmits a Service Discovery frame to search for a WFD communication device. Here, we assume that the Service Discovery is transmitted on channel 6 of 2.4GHz. By transmitting the Service Discovery frame, the mobile terminal device 104 searches for the other device being searched. The Service Discovery frame transmitted by the mobile terminal device 104 in S701 can be considered a request to perform wireless communication using WFD R2 between the MFP 100 and the mobile terminal device 104. Here, we assume that the searching communication device is the mobile terminal device 104 and the other device being searched is the MFP 100. The Service Discovery frame has a WFD attribute, which identifies the target of the search as a WFD communication device. The Service Discovery frame also includes a device ID key that identifies the mobile terminal device 104 and information indicating the validity period of the device ID key.
[0066] In S702, when MFP100 receives a Service Discovery frame, it sends a Service Discovery frame. The Service Discovery frame sent here is called SDF Follow-up. Upon receiving the Service Discovery frame, the mobile terminal device 104 detects MFP100, which is the WFD communication partner. The second search process described above is the search sequence for WFD R2. Because the first search process of WFD R1 and the second search process of WFD R2 use different methods, a communication device that only supports WFD R1 cannot be searched using the WFD R2 method. Conversely, a communication device that only supports WFD R2 cannot be searched using the WFD R1 method.
[0067] In S703, the mobile terminal device 104 sends a request using a Bootstrapping Request frame. This request concerns a method for sharing communication parameters. Using this frame, the mobile terminal device 104 can notify the MFP 100 of the sharing methods it can implement from among, for example, a button method (authentication operation method), a PIN code, a passphrase, a QR code, an NFC (Near Field Communication) tag, etc. In this embodiment, a QR code is described as an example of a two-dimensional code image. For example, if the mobile terminal device 104 can implement a sharing method using a QR code, it can indicate at least whether it can display or read a QR code. Also, if the mobile terminal device 104 can implement a sharing method using a passphrase, it can indicate whether it can use either a string or a number, or both. Also, if the mobile terminal device 104 can implement a sharing method using a passphrase, it can indicate at least whether it can display or input a passphrase. Furthermore, the mobile terminal device 104 may indicate whether or not it is possible to trigger the sharing of communication parameters by pressing a button. The information that the mobile terminal device 104 can notify is not limited to these.
[0068] In S704, the MFP100 responds to a request using a Bootstruping Request frame. The MFP100 sends a response to the mobile terminal device 104 using a Bootstruping Response frame. For example, the MFP100 may select a sharing method that it can implement from among the sharing methods included in the request from the mobile terminal device 104 and send a response containing information that identifies that sharing method. If there is no sharing method that the MFP can implement among the sharing methods included in the request, it may send a response containing information indicating that.
[0069] In S705, bootstrapping is performed using a sharing method for sharing communication parameters determined between communication devices, and the sharing of communication parameters is executed. For example, MFP100 displays a QR code, and the mobile terminal device 104 reads the QR code to share communication parameters. The bootstrapping process in S705 is the communication parameter sharing process of WFD R2. The communication parameter sharing process of WFD R2 is performed before the GO Negotiation process. The communication parameters shared here include at least one (one or more) parameters used for wireless communication from among the encryption method, encryption key, authentication method, AKM, and BSSID (MAC address). In the case of parameter sharing using a QR code, a passphrase is also included.
[0070] In S706, mutual authentication can be performed using PASN authentication. PASN is an abbreviation for Preassociation Security Negotiation. Communication parameters for using PASN may include the public key of each communication device. Communication parameters for using PASN may be shared using methods not specified in the WFD standard, such as Bluetooth or Bluetooth Low Energy. Alternatively, as another sharing method, a temporary network including APs may be configured, and communication devices may obtain the communication parameters by connecting to that network. In PASN, the mobile terminal device 104 and the MFP 100 may perform GO Negotiation processing. In GO Negotiation, the channel to be used for wireless communication may be determined directly. In GO Negotiation processing, the roles of P2P group owner (GO) and P2P client are determined. In addition, the MFP 100 may be set to start permanently as the master station in WFD mode (Autonomous Group Owner). In this case, GO Negotiation processing to determine roles is unnecessary. The MFP 100 may perform GO Negotiation processing by setting its intent value to the maximum of 15, but may always operate as the MFP 100. In this case, the MFP100, acting as the master station, directly determines the frequency band and frequency channel to be used for wireless communication. Therefore, the MFP100 can select which frequency band to use from 2.4GHz, 5GHz, or 6GHz, and which frequency channel to use within that frequency band. In WFD R1, the frequency bands that could be used for direct wireless communication were 2.4GHz and 5GHz, but in WFD R2, in addition to 2.4GHz and 5GHz, 6GHz will also be available for direct wireless communication. Also, unlike R1, WFD R2 determines roles after sharing communication parameters. From processing S707 onwards, the channel used for communication may be changed from the channel used in S701-706.
[0071] In S707, when the MFP100 determines that it will operate as a GO, it begins transmitting a Beacon frame. The Beacon frame may contain communication parameters for communicating with the MFP100. The Beacon frame may also contain information elements (IE) and attributes as defined in the WFD standard. This allows communication devices other than the mobile terminal device 104 to detect the presence of the MFP100 and establish a connection with it. For example, other communication devices can detect the presence of the MFP100 by receiving a Beacon frame containing information defined in the WFD standard.
[0072] In S708, the mobile terminal device 104 sends a Probe Request frame to perform the connection procedure with the MFP 100. In S709, when the MFP 100 receives the Probe Request frame, it sends a Probe Response frame.
[0073] In S710, the mobile terminal device 104 transmits an Authentication frame. In S711, when the MFP 100 receives an Authentication frame, it transmits an Authentication frame.
[0074] In S712, when the mobile terminal device 104 receives an Authentication frame, it sends an Association Request frame. In S713, when the MFP 100 receives an Association Request frame, it sends an Association Response frame.
[0075] In S714, the mobile terminal device 104 and the MFP 100 perform a 4-way handshake.
[0076] In the second standard's method, the connection between the mobile terminal device 104 and the MFP 100 is established by performing the connection procedure described above. The processing of the mobile terminal device 104 and the MFP 100 described above may also be reversed. Furthermore, whether or not it is WFD R1 compliant or WFD R2 compliant may be indicated in the P2P IE.
[0077] Thus, the WFD standard has two versions: WFD R1 and WFD R2. Devices that support the functionality exposed as Wi-Fi Direct, such as the mobile terminal device 104 and MFP100, can establish a direct connection without going through an external AP by performing either the first connection process or the second connection process.
[0078] By the way, WFD R1's security level supports the WPA2 security method. On the other hand, WFD R2's security level supports WPA, WPA2, and WPA3 security methods. WPA3 is a security method with a higher security level than WPA2. In other words, WFD R2 supports security methods with a higher security level than WFD R1.
[0079] Thus, WFD R1 and WFD R2 are incompatible in some aspects of their corresponding security methods. However, during the transition period accompanying the development of WFD R2, situations may arise where devices compatible with WFD R1 and devices compatible with WFD R2 coexist. For example, consider a case where WPA3 is used as the security method when establishing a direct connection via a second connection process between a device compatible only with WFD R1 and a device compatible with WFD R2. In such a case, as mentioned above, WFD R1 does not support WPA3, so a direct connection cannot be established between the devices.
[0080] Therefore, in this embodiment, as described above with reference to Figures 6 and 7, the MFP100 is capable of performing processing that complies with both the WFD R1 and WFD R2 standards. As a result, the MFP100 can establish a direct connection even if the connected device only supports WFD R1. Furthermore, the MFP100 can establish a direct connection even if the connected device supports WFD R2.
[0081] Here, we consider a case where a communication device such as an MFP100, which supports both WFD R1 and WFD R2 standards, makes a direct connection to an external device such as a mobile terminal device 104. In such a case, the communication device may allow the user to set, for example, on the user interface (UI) screen, whether to use a first connection process or a second connection process to make a direct connection to the external device. However, when making a direct connection between the communication device and an external device, some users may be unsure which process to use. Therefore, there is a need to improve the convenience of the communication device when making a direct connection to an external device.
[0082] Figures 8(a) and 8(b) schematically show examples of the display of the setting screen related to wireless direct on the display (touch panel display) included in the operation display unit 220 of the MFP100.
[0083] Figure 8(a) shows an example of the menu screen 800 that is displayed when wireless direct connection is selected in Figure 3(c). The menu screen 800 is for setting the operating mode of the wireless unit 226 when the MFP100 makes a direct connection. The menu screen 800 displays "WFD mode" for button 801 and "Soft AP mode" for button 802. For example, when button 801 is pressed, the CPU 212 sets the wireless unit 226 to operate in WFD mode when the MFP100 makes a direct connection. Also, when button 802 is pressed, the CPU 212 sets the wireless unit 226 to operate in Soft AP mode when the MFP100 makes a direct connection.
[0084] Figure 8(b) shows an example of the settings screen 810 that is displayed when button 801 is pressed on the menu screen 800 in Figure 8(a) (WFD mode is selected). The settings screen 810 is for setting the operating version of the wireless unit 226 when the MFP100 makes a direct connection using WFD. The settings screen 810 displays "R2" for button 811, "R1" for button 812, and "Match wireless infrastructure" for button 813.
[0085] Button 811 is a reception button that can receive user instructions to cause the wireless unit 226 to perform a second connection process. In other words, when the MFP100 makes a direct connection using WFD, button 811 is a setting button that sets the wireless unit 226 to an operating version compatible with WFD R2.
[0086] Button 812 is a reception button that can receive user instructions to cause the wireless unit 226 to perform a first connection process. In other words, when the MFP100 makes a direct connection using WFD, button 812 is a setting button for setting the wireless unit 226 to an operating version compatible with WFD R1. Button 813 is a reception button that can receive user instructions to cause the wireless unit 226 to perform either a first connection process or a second connection process based on information about the security method used for the infrastructure connection. In other words, when the MFP100 makes a direct connection using WFD, button 813 is a setting button for setting the operating version of the wireless unit 226 according to the security method used for the infrastructure connection.
[0087] When any of buttons 811, 812, or 813 are pressed on the settings screen 810 in Figure 8(b), the CPU 212 stores the setting value corresponding to the pressed button in the RAM 214 and non-volatile memory 215. Then, as will be described later, when the MFP 100 is directly connected via WFD, the CPU 212 determines the operating version of the wireless unit 226 based on the setting values stored in the RAM 214 and non-volatile memory 215.
[0088] Thus, in this embodiment, by providing a button 813 on the settings screen 810, user convenience can be improved when the MFP 100 directly connects to an external device such as a mobile terminal device 104. For example, even if a user is unsure whether to set the operating version of the wireless unit 226 to R1 or R2, the burden on the user during settings can be reduced by operating the button 813.
[0089] Furthermore, by providing buttons 811 and 812 on the settings screen 810, if the user knows whether the operating version of the wireless unit 226 should be set to R1 or R2, the settings can be accepted individually.
[0090] Figures 9(a) to 10(c) schematically show an example of the display of the mobile portal screen (operation screen when directly connected) on the display (touch panel display) included in the operation display unit 220 of the MFP100.
[0091] Figure 9(a) shows an example of the mobile portal screen 900 displayed when the mobile portal function (not shown) is selected in Figure 3(b). The mobile portal screen 900 displays the "Start" button 901. When button 901 is pressed, the CPU 212 starts processing to establish a direct connection according to the mode specified in Figure 8(a). This processing will be described in detail later. In other words, button 901 is a reception button that can receive user instructions to start a direct connection to the MFP 100. When the wireless unit 226 is operated in WFD mode, the CPU 212 executes connection processing in accordance with the WFD standard according to the button pressed on the settings screen 810 in Figure 8(b).
[0092] Figure 9(b) shows an example of the notification screen 910 displayed when button 813 is selected on the settings screen 810 in Figure 8(b). The notification screen 910 displays a message to the user informing them of the WFD standard determined by the CPU 212 after button 901 is pressed on the mobile portal screen 900. For example, in the process shown in Figure 11, described later, if the information regarding the security method used for the infrastructure connection indicates WPA3, the CPU 212 displays a message notifying that it has started the operation corresponding to WFD R2 (second connection process). Also, for example, in the process shown in Figure 11, described later, if the information regarding the security method used for the infrastructure connection is different from WPA3, the CPU 212 displays a message notifying that it has started the operation corresponding to WFD R1 (first connection process). Through such message notifications, the user can recognize the startup version when the MFP100 makes a direct connection with an external device. The notification screen 910 turns OFF (hidden) when the "OK" button on button 911 is pressed or after a certain period of time has elapsed.
[0093] Figure 9(c) shows an example of the display of screen 920, which is shown when the WFD standard connection process is started. Screen 920 includes the device name 921, device list 922, and the "End" button 923. The device name 921 displays identification information representing the MFP100 in P2P communication. The device list 922 displays a list of external devices detected by either the first or second discovery process. The device list 922 allows the user to select the external device to be connected from the list of external devices. In other words, screen 920 is the user selection screen for the external device to be connected via direct connection. When the CPU 212 receives the user selection of the external device to be connected via the device list 922, for example, it sends a connection request to the selected external device. The CPU 212 terminates the WFD standard connection process when button 923 is pressed.
[0094] Figure 9(d) shows an example of the parameter sharing screen 930 displayed when parameter sharing is performed using the button method in the second connection process using WFD R2 as shown in Figure 7 between the MFP 100 and the mobile terminal device 104. The parameter sharing screen 930 displays instructions for the user. The instructions include a message stating that a connection using WFD R2 as shown in Figure 7 is being requested and asking whether the user approves or rejects the connection. The parameter sharing screen 930 also displays the identification information of the device requesting the parameter sharing, and buttons 932 ("Yes") and 933 ("No"). If the user selects "Yes" for button 932, it indicates that the user has authorized (approved) parameter sharing, and the parameter sharing necessary to establish the connection using WFD R2 as shown in Figure 7 between the MFP 100 and the mobile terminal device 104 is performed. On the other hand, if the user selects "No" for button 933, the WFD R2 connection process between the MFP 100 and the mobile terminal device 104 as shown in Figure 7 is canceled. In the button-based system, upon receiving a parameter sharing request (Bootstrapping Request), an operation to approve the parameter sharing is presented (e.g., displaying "Yes" on button 932, or presenting a hard key to accept the approval operation). Once the approval operation is performed (e.g., the display button is operated, or the corresponding hard key is operated), the parameters are transmitted wirelessly to the source of the parameter sharing request. In this way, the button-based system allows parameter sharing to be performed with simple user operation.
[0095] Figures 9(e) to 9(g) show examples of parameter sharing screens displayed on the operation display unit 220 during the second connection process using WFD R2 in Figure 7 between the MFP 100 and the mobile terminal device 104. When an external device to be connected is selected on screen 920 in Figure 9(c), the CPU 212 determines the method for sharing communication parameters between the MFP 100 and the mobile terminal device 104 and displays the parameter sharing screen. The CPU 212 also determines the method for sharing communication parameters between the MFP 100 and the mobile terminal device 104 and displays the parameter sharing screen when the MFP 100 receives a Bootstrapping Request from the mobile terminal device 104. The CPU 212 determines which of the parameter sharing screens in Figures 9(e) to 9(g) to display based on the parameter sharing method setting value that has been accepted in advance by the user.
[0096] Figure 9(e) shows an example of the parameter sharing screen 940 displayed when parameter sharing is performed using the QR code method in the second connection process by WFD R2 in Figure 7 between the MFP 100 and the mobile terminal device 104. The parameter sharing screen 940 displays item 941, "QR Code," and button 942, "End." The parameter sharing screen 940 may also display the name of the mobile terminal device 104 that is making the connection request by WFD. Item 902, "QR Code," displays a code image containing parameter information such as the BSSID and passphrase necessary for establishing the connection with WFD R2 in Figure 7.
[0097] Figures 9(f) and 9(g) show examples of the parameter sharing screen displayed when parameter sharing is performed using the PIN code method in the second connection process using WFD R2 in Figure 7 between the MFP100 and the mobile terminal device 104.
[0098] The parameter sharing screen 950 shown in Figure 9(f) displays the PIN code display unit 951, the button 952, etc. The PIN code input unit 951 displays the PIN code to be entered into the mobile terminal device 104. In other words, Figure 9(f) shows the screen when the MFP 100 receives a request for parameter sharing from the mobile terminal device 104. The parameter sharing screen 960 shown in Figure 9(g) displays the PIN code display unit 961, the button 962, the button 963, etc. The PIN code input unit 961 is an item that can accept input of a PIN code to be sent to the mobile terminal device 104. Button 962 is a button that can accept user instructions to send the PIN code received by the PIN code input unit 961 to the mobile terminal device 104. Buttons 952 and 963 are buttons that can accept user instructions to terminate the second connection process.
[0099] Figure 10(a) shows an example of the display of screen 1000, which is shown when the authentication process for the WFD standard connection process is started. Specifically, when the MFP 100 starts the first connection process with the mobile terminal device 104, screen 1000 is displayed at the following timings. For example, screen 1000 is displayed when the user selects the mobile terminal device 104 to be connected in the device list 922 of screen 920 in Figure 9(c). Also, for example, screen 1000 is displayed when button 932 is pressed on screen 930 in Figure 9(d). When the MFP 100 starts the second connection process with the mobile terminal device 104, screen 1000 is displayed at the following timings. For example, screen 1000 is displayed when parameter sharing is completed. Screen 1000 displays the device display unit 1001. The device display unit 1001 displays identification information indicating the mobile terminal device 104 for which the MFP 100 is executing the WFD standard connection process. If button 1002 is pressed, the WFD standard connection process will be interrupted.
[0100] Figure 10(b) shows an example of the display of screen 1010, which is displayed when the WFD standard connection process is completed. Screen 1010 displays the device display unit 1011. The device display unit 1011 displays identification information representing the external device (the mobile terminal device 104 on which the MFP 100 has established a direct connection) for which the WFD standard connection process was successful. The CPU 212 switches the display to screen 1020 in Figure 10(c) when the "close" button 1012 is pressed or after a certain period of time has elapsed.
[0101] Figure 10(c) shows an example of the display of screen 1020, which is shown when the MFP 100 is directly connected to an external device. The device display unit 1021 is displayed on screen 1020. The device display unit 1020 displays identification information indicating the external device to which the MFP 100 is directly connected. When the "End" button 1022 is pressed, the CPU 212 disconnects the direct connection between the MFP 100 and the mobile terminal device 104.
[0102] (Connection process performed by MFP100) Figure 11 is a flowchart illustrating an example of the process by which the MFP100 establishes a direct connection. The process shown in Figure 11 is implemented, for example, by the CPU 212 reading various programs stored in the memory area of the MFP100, such as the ROM 213, into the RAM 214 and executing them. The process in Figure 11 is started, for example, when the CPU 212 detects that button 901 has been pressed on screen 900 in Figure 9(a).
[0103] In S1101, the CPU 212 starts the wireless direct operation of the MFP 100. Specifically, for example, the CPU 212 starts the MFP 100 in WFD mode as the wireless direct operation. That is, the CPU 212 operates the wireless unit 226 in WFD mode. The CPU 212 may start the MFP 100 in both WFD mode and soft AP mode as the wireless direct operation.
[0104] In S1102, the CPU 212 refers to the setting value of the operating version when the wireless unit 226 is operating in WFD mode. As described above, when any of buttons 811, 812, or 813 is pressed on the setting screen 810 in Figure 8(b), the CPU 212 stores the setting value corresponding to the pressed button in the RAM 214 and the non-volatile memory 215. In S1102, the CPU 212 obtains the setting value of the operating version when the wireless unit 226 is operating in WFD mode from the RAM 214 and the non-volatile memory 215.
[0105] In S1103, the CPU212 determines whether the setting value for the operating version in WFD mode, which was referenced in S1101, is "match to wireless infrastructure". If the CPU212 determines that it is "match to wireless infrastructure", it proceeds to S1104. On the other hand, if the CPU212 determines that it is not "match to wireless infrastructure", it proceeds to S1105.
[0106] In S1104, the CPU 212 determines whether the MFP 100 is connected to the infrastructure. That is, the CPU 212 determines whether the MFP 100 is connected to the mobile terminal device 104 via the external AP 101. If the CPU 212 determines that the MFP 100 is connected to the infrastructure, the process proceeds to S1106. On the other hand, if the CPU 212 determines that the MFP 100 is not connected to the infrastructure, the process proceeds to S1110. Note that this determination is not limited to this form, and may also determine whether the MFP 100 is connected to the external AP 101.
[0107] In S1105, the CPU 212 determines whether the operating version setting value in WFD, which was referenced (obtained) in S1102, is "R2". If the CPU 212 determines that it is "R2", it proceeds to S1108. On the other hand, if the CPU 212 determines that it is not "R2", it proceeds to S1110. In other words, in S1105, the CPU 212 determines whether button 811 was pressed on screen 810 in Figure 8(b).
[0108] In S1106, the CPU 212 references (retrieves) information stored in the RAM 214 and non-volatile memory 215 that indicates the security method used for infrastructure connection.
[0109] Specifically, for example, if the MFP100 is connected to an external device such as a mobile terminal device 104 via an external AP such as AP101, the MFP100 is connected to the external AP. When the MFP100 is connected to an external AP, the CPU212 stores information about the external AP in, for example, the RAM214 and non-volatile memory215. Information about the external AP is information for connecting to the external AP, and includes, for example, the SSID and password of the external AP. Information about the external AP also includes information about the security method supported by the external AP. In S1106, the CPU212 obtains information about the security method supported by the external AP from, for example, the RAM214 and non-volatile memory215. That is, information indicating the security method used for infrastructure connection is specifically, for example, information about the security method supported by the external AP. Information about the security method is information indicating the security protocol. Specifically, information about the security method is, for example, information indicating the authentication method supported by the external AP and information indicating the encryption method supported by the external AP.
[0110] In S1107, CPU212 determines whether the security method used for the infrastructure connection is "WPA3". CPU212 makes this determination based on the information about the security method used for the infrastructure connection obtained in S1106. If CPU212 determines that it is "WPA3", it proceeds to S1108. On the other hand, if CPU212 determines that it is not "WPA3", it proceeds to S1110.
[0111] In S1108, the CPU 212 disables the WFD R1 function setting and stores the disabled setting in the RAM 214. Disabling the WFD R1 function setting indicates that the WFD R1 processing sequence shown in Figure 6 is not executable. In other words, in S1108, the CPU 212 sets the MFP 100 to a state where the wireless unit 226 cannot perform the operation corresponding to WFD R1 (first connection processing).
[0112] In S1109, the CPU 212 enables the WFD R2 function settings and stores the enabled settings in the RAM 214. The fact that the WFD R2 function settings are enabled indicates that the WFD R2 processing sequence shown in Figure 7 is executable. In other words, in S1109, the CPU 212 sets the MFP 100 to a state where the wireless unit 226 can perform operations corresponding to WFD R2 (second connection processing).
[0113] Thus, in this embodiment, if the security method information used for the infrastructure connection is WPA3 (YES in S1107), there is a high probability that the external device to which the direct connection is made also supports WPA3. Therefore, if the security method information used for the infrastructure connection is WPA3, the CPU212 enables the WFD R2 function.
[0114] In S1110, the CPU 212 disables the WFD R2 function setting and stores the disabled setting in the RAM 214. Disabling the WFD R2 function setting indicates that the WFD R2 processing sequence shown in Figure 7 cannot be executed. In other words, in S1110, the CPU 212 sets the MFP 100 to a state where the wireless unit 226 cannot perform operations corresponding to WFD R2 (second connection processing).
[0115] In S1111, the CPU 212 enables the WFD R1 function setting and stores the enabled setting in the RAM 214. The fact that the WFD R1 function setting is enabled indicates that the WFD R1 processing sequence shown in Figure 6 is in a state where it can be executed. In other words, in S1111, the CPU 212 sets the MFP 100 to a state where the wireless unit 226 can perform an operation corresponding to WFD R1 (first connection processing).
[0116] In this embodiment, the CPU 212 enables the WFD R1 function and controls the wireless unit 226 to perform a direct connection via the first connection process when the MFP 100 is not connected to the infrastructure (NO in S1104). In other words, the CPU 212 enables the WFD R1 function when it is unable to obtain information about the security method used for the infrastructure connection. This is because, as mentioned above, WFD R2 supports a higher security level security method (WPA3) than WFD R1. Also, some devices that are connected to via direct connection may not support WPA3. Therefore, for example, if the CPU 212 enables the WFD R2 function when it is unable to obtain the security method used for the infrastructure connection, the MFP 100 may not be able to establish a direct connection with an external device. For this reason, the CPU 212 enables the WFD R1 function when it is unable to obtain the security method used for the infrastructure connection.
[0117] Furthermore, if the security method used by MFP100 for infrastructure connection is not WPA3 (NO in S1107), there is a possibility that the mobile terminal device 104 connected to the infrastructure does not support WFD R2. Therefore, in this embodiment, if the security method used by MFP100 for infrastructure connection is not WPA3 (NO in S1107), the CPU 212 enables the WFD R1 function.
[0118] In S1112, the CPU 212 refers to the WFD R1 function settings and WFD R2 function settings stored in RAM 214 and starts either the first connection process or the second connection process. Specifically, if the processes in S1108 to S1109 were executed, the WFD R2 function is enabled, so the CPU 212 executes the second search process. This will find a mobile terminal device 104 that supports WFD R2. In other words, a mobile terminal device 104 that can establish a direct connection using a security method compatible with WFD R2 will be found. On the other hand, if the processes in S1110 to S1111 were executed, the WFD R1 function is enabled, so the CPU 212 executes the first search process. This will find a mobile terminal device that supports WFD R1. In other words, a mobile terminal device 104 that can establish a direct connection using a security method compatible with WFD R1 will be found. The mobile terminal device 104 found in this process is displayed on screen 920 in Figure 9(c).
[0119] In S1113, the CPU 212 determines whether the setting value for the operating version when the wireless unit 226 is operating in WFD mode, which was referenced (obtained) in S1102, is "match to wireless infrastructure". If the CPU 212 determines that it is "match to wireless infrastructure", it proceeds to S1114. On the other hand, if the CPU 212 determines that it is not "match to wireless infrastructure", it proceeds to S1115.
[0120] In S1114, the CPU 212 notifies the user whether the first connection process or the second connection process will be performed by the wireless unit 226. Specifically, the CPU 212 displays the notification screen 910 shown in Figure 9(b) on the operation display unit 220.
[0121] In S1115, the CPU 212 displays identification information indicating the mobile terminal device 104 discovered in the search process executed in S1112 in the device list 922 in Figure 9(c). This process is repeated if there is no connection request from the mobile terminal device 104 discovered in the search process executed in S1112 (if the result is No in S1116). If another external device is discovered, it is added to the device list 922, and if the mobile terminal device 104 that was displayed in the device list 922 can no longer be found, it is removed from the device list 922.
[0122] In S1116, the CPU 212 determines whether or not there is a connection request. If the CPU 212 determines that there is a connection request, it proceeds to S1117. Alternatively, if the CPU 212 determines that there is a connection request, it proceeds to S1115. Specifically, the CPU 212 determines that there is a connection request if, for example, it receives a user selection of an external device to be connected to in the device list 922 (see Figure 9(c)) displayed on screen 920. On the other hand, the CPU 212 determines that there is no connection request if, for example, it does not receive a user selection in the device list 922. In other words, in S1116, the CPU 212 determines whether or not it has received a user instruction to send a connection request.
[0123] In S1117, the CPU 212 performs connection processing with the mobile terminal device 104, which was determined to have a connection request in S1116, and establishes a direct connection between the MFP 100 and the mobile terminal device 104. The direct connection established in the connection processing of S1117 is a connection based on the settings performed in S1109 or S1111.
[0124] In other words, when the connection process of S1107 is executed via S1109, the direct connection established between the mobile terminal device 104 and the MFP 100 is performed based on the WFD R2 function. Specifically, the CPU 212 performs the second connection process shown in Figure 7 using the wireless unit 226, but does not perform the first connection process shown in Figure 6 using the wireless unit 226. For example, the CPU 212 performs responses to the wireless direct discovery process performed by the mobile terminal device 104 based on the WFD R2 function, and responses to connection requests transmitted by the mobile terminal device 104 based on the WFD R2 function. On the other hand, the CPU 212 does not perform responses to the wireless direct discovery process performed by the mobile terminal device 104 based on the WFD R1 function, nor responses to connection requests transmitted by the mobile terminal device 104 based on the WFD R1 function.
[0125] On the other hand, when the connection process of S1107 is executed via S1111, the direct connection established between the mobile terminal device and the MFP100 is performed based on the WFD R1 function. Specifically, the CPU212 performs the first connection process shown in Figure 6, but does not perform the second connection process shown in Figure 7. For example, the CPU212 performs responses to the wireless direct discovery process performed by the mobile terminal device 104 based on the WFD R1 function, and responses to connection requests transmitted by the mobile terminal device based on the WFD R1 function. On the other hand, the CPU212 does not perform responses to the wireless direct discovery process performed by the mobile terminal device 104 based on the WFD R2 function, nor does it perform responses to connection requests transmitted by the mobile terminal device 104 based on the WFD R2 function.
[0126] In S1117, specifically, the CPU 212 sends a connection request to the mobile terminal device 104 selected by the user in the device list 922. The CPU 212 may also switch the display content to screen 1000 (see Figure 10(a)) which indicates that it is executing the process to connect to the mobile terminal device 104 selected by the user in screen 920 of Figure 9(c).
[0127] When the mobile terminal device 104 receives a connection request from the MFP 100, it displays a screen (not shown) indicating that a connection request has been received. The mobile terminal device 104 accepts user input to authorize the connection. Subsequently, the mobile terminal device 104 sends a notification to the MFP 100 indicating that the connection is authorized. This establishes a direct connection between the mobile terminal device 104, which was selected by the user in the device list 922, and the MFP 100. At this time, the CPU 212 may switch the display content to screen 1010 (see Figure 10(b)) indicating that a WFD connection has been established between the mobile terminal device 104 and the MFP 100.
[0128] In this embodiment, in S1116, the CPU 212 determined whether or not it had received a user selection of an external device to be connected from the device list 922 (see Figure 9(c)) displayed on screen 920, but it is not limited to this. For example, the CPU 212 may determine whether or not it has received a connection request from the mobile terminal device 104.
[0129] In other words, in S1116, if the CPU 212 determines that it has received a connection request from the mobile terminal device 104, it can proceed to S1117 and establish a direct connection between the mobile terminal device 104 and the MFP 100. Specifically, for example, while displaying the screen 920 in Figure 9(c), the CPU 212 can execute responses to the wireless direct discovery process performed by the mobile terminal device 104 and responses to connection requests transmitted by the mobile terminal device 104. In other words, the CPU 212 does not execute responses to the wireless direct discovery process performed by the mobile terminal device 104 or responses to connection requests transmitted by the mobile terminal device 104 when the screen 920 in Figure 9(c) is not displayed. However, the system is not limited to this configuration, and the above responses may also be executed when the screen 920 in Figure 9(c) is not displayed.
[0130] When the mobile terminal device 104 receives a response from the MFP 100 to the wireless direct discovery process, it displays the MFP 100 as the result of the wireless direct discovery process. If the user selects the MFP 100 as the connection target, the mobile terminal device 104 sends a connection request to the MFP 100. When the CPU 212 receives the connection request from the mobile terminal device 104, it switches the display content to screen 940 (Figure 9(d)) indicating that a connection request has been received from the mobile terminal device 104. The CPU 212 also accepts the user's selection whether or not to allow the connection of the mobile terminal device 104. The CPU 212 may switch the display content to screen 1000 (Figure 10(a)) indicating that it is performing processing to connect with the selected mobile terminal device 104. Subsequently, the CPU 212 sends a notification to the mobile terminal device 104 indicating that the connection is permitted. This establishes a WFD direct connection between the mobile terminal device 104 and the MFP 100, which received the connection request from the mobile terminal device 104. At this time, the CPU 212 may switch the display content to screen 1010 (Figure 10(b)) which indicates that a direct connection via WFD has been established between the mobile terminal device 104 and the MFP 100.
[0131] As described above, according to this embodiment, the CPU 212 performs the following processing when the MFP 100 is directly connected. When button 813 is pressed, the CPU 212 acquires information indicating the security method used for the infrastructure connection (S1106). Then, if the acquired information regarding the security method indicates WPA3, the CPU 212 enables the WFD R2 function (S1109). On the other hand, if the acquired information regarding the security method indicates a security method other than WPA3, the CPU 212 enables the WFD R1 function (S1111). Subsequently, based on the enabled settings, the CPU 212 establishes a direct connection between the MFP 100 and the mobile terminal device 104 by executing the WFD standard connection processing (S1112~S1117). In other words, the CPU 212 controls the wireless unit 226 to perform a direct connection based on the security method information acquired in S1106. This type of control reduces the burden on the user when they are unsure about the settings related to the direct connection when the MFP100 is directly connected to the mobile terminal device 104.
[0132] <Second Embodiment> The differences from the first embodiment will be described below. In the first embodiment, the CPU 212 enabled the WFD R1 function and controlled the wireless unit 226 to perform a direct connection by the first connection process when the MFP 100 was not connected to the infrastructure (NO in S1104).
[0133] Incidentally, even if the MFP100 is not connected to the infrastructure, there may be external access points (APs) in the vicinity of the MFP100. If external APs exist in the vicinity of the MFP100, it is possible that devices such as the mobile terminal device 104 are connected to those external APs. In other words, even if the MFP100 is not currently connected, there may be external APs in the vicinity of the MFP100 that are being used by users. Therefore, in this embodiment, if the MFP100 is not connected to the infrastructure, the CPU212 searches for external APs that exist in the vicinity of the MFP100. Then, based on the information regarding the security method used by the external AP discovered through the search, the CPU212 controls the wireless unit 226 to perform a direct connection using either the first connection process or the second process.
[0134] Figure 12 is a flowchart showing an example of the process by which the MFP100 establishes a direct connection in this embodiment. The process shown in Figure 12 is realized, for example, by the CPU212 reading various programs stored in the memory area such as the ROM213 of the MFP100 into the RAM214 and executing them. The process in Figure 12 is started, for example, when the CPU212 detects that button 901 has been pressed on the screen 900 in Figure 9(a).
[0135] Since the processes in S1201 to S1203 are the same as those in S1101 to S1103 in Figure 11, their explanation will be omitted.
[0136] In S1204, the CPU 212 determines whether the MFP 100 is connected to the infrastructure. That is, the CPU 212 determines whether the MFP 100 is connected to the mobile terminal device 104 via the external AP 101. If the CPU 212 determines that it is connected to the infrastructure, it proceeds to S1206. On the other hand, if the CPU 212 determines that it is not connected to the infrastructure, it proceeds to S1209.
[0137] Since the processes in S1205 to S1206 are the same as those in S1105 to S1106 in Figure 11, their explanation will be omitted.
[0138] In S1207, CPU212 determines whether the security method used for the infrastructure connection is "WPA3". CPU212 makes this determination based on the information about the security method used for the infrastructure connection obtained in S1206. If CPU212 determines that it is "WPA3", it proceeds to S1211. On the other hand, if CPU212 determines that it is not "WPA3", it proceeds to S1208.
[0139] In S1208, CPU212 determines whether the security method used for the infrastructure connection is "WPA2". CPU212 makes this determination based on the information about the security method used for the infrastructure connection obtained in S1206. If CPU212 determines that it is "WPA2", it proceeds to S1213. On the other hand, if CPU212 determines that it is not "WPA2", it proceeds to S1209.
[0140] In S1209, the CPU 212 searches for APs (Access Points) around the MFP 100. For example, the CPU 212 discovers APs around the MFP 100 by receiving beacons transmitted by those APs. The beacons transmitted by the APs contain information about the security method supported by the APs. The CPU 212 then determines the operating version of the wireless unit 226 based on the information about the security method used by the APs discovered through the search. Specifically, for example, the CPU 212 determines whether the security method supported by the discovered APs is WPA3. If the CPU 212 determines that it is WPA3, for example, it sets the operating version of the wireless unit 226 to "R2". On the other hand, if the CPU 212 determines that the security method supported by the discovered APs is not WPA3, it sets the operating version of the wireless unit 226 to "R1". In addition, in S1209, if the CPU 212 is unable to find any APs through the search, it may set the operating version of the wireless unit 226 to "R1".
[0141] In addition, in S1209, the CPU 212 may consider information such as the signal strength and SSID of the AP when determining the operating version of the wireless unit 226 based on information about the security method used by the AP discovered through the search. For example, if multiple APs are discovered through the search, the CPU 212 may determine the operating version of the wireless unit 226 based on information about the security method used by the AP with the highest signal strength among the discovered APs.
[0142] Furthermore, for example, in S1209, if multiple APs are discovered through the search, the CPU 212 may identify APs to which the MFP100 has previously connected based on the SSIDs of the discovered APs. The CPU 212 may then determine the operating version of the wireless unit 226 based on information regarding the security methods used by the APs to which the MFP100 has previously connected.
[0143] In S1210, CPU212 determines whether the operating version determined in S1209 is "R2". If CPU212 determines that it is "R2", it proceeds to S1211. On the other hand, if CPU212 determines that it is not "R2", it proceeds to S1213.
[0144] Since steps S1211 to S1220 are the same as steps S1108 to S1117 in Figure 11, their explanation will be omitted.
[0145] As described above, according to this embodiment, if the MFP100 is not connected to the infrastructure (NO in S1204), the CPU 212 proceeds to S1209 and searches for external APs in the vicinity of the MFP100. Then, if the information regarding the security method used by the discovered external AP indicates the WPA3 method, the CPU 212 enables the WFD R2 function. On the other hand, if the information regarding the security method used by the discovered external AP does not indicate the WPA3 method, the CPU 212 enables the WFD R1 function. In other words, based on the information regarding the security method used by the external AP discovered through the search, the CPU 212 controls the wireless unit 226 to perform a direct connection using either the first connection process or the second process.
[0146] This configuration allows the MFP100 to be configured with appropriate functions based on information about the security methods used by the APs around it, even when the MFP100 is not connected to the infrastructure.
[0147] Furthermore, in this embodiment, even if the MFP100 is connected to the infrastructure, if the security method used for the infrastructure connection is neither WPA3 nor WPA2 (NO in S1208), the CPU212 proceeds to S1209. The case where the security method used for the infrastructure connection is neither WPA3 nor WPA2 means that the security method supported by AP101 is WPA. WPA is a security method with a lower security level than WPA2 and WPA3. Thus, even if the MFP100 is connected to the infrastructure, the security level of the security method used for the infrastructure connection may be lower than WPA2 and WPA3. In such cases, the CPU212 can set a more appropriate function by searching for an external AP and enabling either the WFD R1 function or the WFD R2 function based on the security method of the AP found.
[0148] <Third Embodiment> The third embodiment will now be described in terms of its differences from the first and second embodiments. In this embodiment, if the MFP100 is not connected to the infrastructure, the CPU212 obtains information about the security method that the MFP100 used in past infrastructure connections. Based on the obtained information about the security method that the MFP100 used in past infrastructure connections, the CPU212 enables either the WFD R1 function or the WFD R2 function.
[0149] Figure 13 is a flowchart showing an example of the process by which the MFP100 establishes a direct connection in this embodiment. The process shown in Figure 13 is realized, for example, by the CPU212 reading various programs stored in the memory area such as the ROM213 of the MFP100 into the RAM214 and executing them. The process in Figure 13 is started, for example, when the CPU212 detects that button 901 has been pressed on screen 900 in Figure 9(a).
[0150] Since steps S1301 to S1303 are the same as steps S1101 to S1103 in Figure 11, their explanation will be omitted.
[0151] In S1304, the CPU 212 determines whether the MFP 100 is connected to the infrastructure. That is, the CPU 212 determines whether the MFP 100 is connected to the mobile terminal device 104 via the external AP 101. If the CPU 212 determines that it is connected to the infrastructure, the process proceeds to S1306. On the other hand, if the CPU 212 determines that it is not connected to the infrastructure, the process proceeds to S1309.
[0152] Since the processes in S1305 to S1306 are the same as those in S1105 to S1106 in Figure 11, their explanation will be omitted.
[0153] In S1307, CPU212 determines whether the security method used for the infrastructure connection is "WPA3". CPU212 makes this determination based on the information about the security method used for the infrastructure connection obtained in S1306. If CPU212 determines that it is "WPA3", it proceeds to S1313. On the other hand, if CPU212 determines that it is not "WPA3", it proceeds to S1308.
[0154] In S1308, CPU212 determines whether the security method used for the infrastructure connection is "WPA2". CPU212 makes this determination based on the information about the security method used for the infrastructure connection obtained in S1306. If CPU212 determines that it is "WPA2", it proceeds to S1315. On the other hand, if CPU212 determines that it is not "WPA2", it proceeds to S1309.
[0155] In S1309, the CPU 212 determines whether the MFP 100 has ever made an infrastructure connection in the past (whether it has a connection record). If the CPU 212 determines that it has made an infrastructure connection in the past, it proceeds to S1310. On the other hand, if the CPU 212 determines that it has never made an infrastructure connection, it proceeds to S1311. Specifically, as described above, when the MFP 100 makes an infrastructure connection, the CPU 212 stores information about the external AP in the RAM 214 and non-volatile memory 215. The information about the external AP includes information about the security method. In S1309, the CPU 212 determines whether information about the security method used by the MFP 100 for infrastructure connections in the past is stored. In other words, in S1309, the CPU 212 determines whether the connection history of infrastructure connections is stored.
[0156] In S1310, the CPU 212 retrieves information from the RAM 214 and non-volatile memory 215 regarding the security method used when the MFP 100 previously made an infrastructure connection. Based on the retrieved security method information, the CPU 212 determines the operating version of the wireless unit 226. Specifically, the CPU 212 determines whether the information regarding the security method used when the MFP 100 previously made an infrastructure connection indicates the WPA3 method. If the CPU 212 determines that the information indicates the WPA3 method, it sets the operating version of the wireless unit 226 to "R2". On the other hand, if the CPU 212 determines that the information does not indicate the WPA3 method, it sets the operating version of the wireless unit 226 to "R1".
[0157] In S1311, the CPU 212 displays a selection screen for the operating version of the wireless unit 226 on the operation display unit 220. Refer to Figure 8(c) here. Figure 8(c) shows an example of the selection screen 820 that the CPU 212 displays on the operation display unit 220 in S1311. The selection screen 820 displays "R2" for button 821 and "R1" for button 822. Button 821 is a reception button that can receive user instructions to have the wireless unit 226 perform the second connection process. Button 822 is a reception button that can receive user instructions to have the wireless unit 226 perform the first connection process. In S1311, the CPU 212 accepts the user's selection via the selection screen 820, indicating whether to have the wireless unit 226 perform the first connection process or the second connection process. Then, based on the user operation (user selection) on the selection screen 820, the CPU 212 decides whether to have the wireless unit 226 perform the first connection process or the second connection process. Specifically, if button 821 is pressed, the CPU 212 sets the operating version of the wireless unit 226 to "R2". On the other hand, if button 822 is pressed, the CPU 212 sets the operating version of the wireless unit 226 to "R1".
[0158] In S1312, CPU212 determines whether the operating version determined in S1310 or S1311 is "R2". If CPU212 determines that it is "R2", it proceeds to S1313. On the other hand, if CPU212 determines that it is not "R2", it proceeds to S1315.
[0159] Since steps S1313 to S1322 are the same as steps S1108 to S1117 in Figure 11, their explanation will be omitted.
[0160] As described above, according to this embodiment, if the MFP100 is not connected to the infrastructure (NO in S1304), the CPU 212 proceeds to S1309 and obtains information regarding the security method used in past infrastructure connections. If the information regarding the security method used in past infrastructure connections indicates the WPA3 method, the CPU 212 enables the WFD R2 function. On the other hand, if the information regarding the security method used in past infrastructure connections does not indicate the WPA3 method, the CPU 212 enables the WFD R1 function. In other words, based on the information regarding the security method used by the external AP discovered through the search, the CPU 212 controls the wireless unit 226 to perform a direct connection using either the first connection process or the second process.
[0161] This configuration allows the MFP100 to configure appropriate functions based on information about security methods used in past infrastructure connections, even when it is not connected to an infrastructure.
[0162] Furthermore, in this embodiment, even if the MFP100 is connected to the infrastructure, if the security method used for the infrastructure connection is neither WPA3 nor WPA2 (NO in S1308), the CPU212 proceeds to S1309. Even if the MFP100 is connected to the infrastructure, the security level of the security method used for the infrastructure connection may be lower than WPA2 and WPA3. In such cases, the CPU212 can set a more appropriate function by enabling either the WFD R1 function or the WFD R2 function based on information about the security method used in past infrastructure connections.
[0163] In S1209 of the second embodiment described above, the CPU 212 determines the operating version of the wireless unit 226 to "R1" if it cannot find an AP through the search, but it is not limited to this. In S1209, if the CPU 212 cannot find an AP through the search, it may display the selection screen 820 shown in Figure 8(c) on the operation display unit 220. The CPU 212 may then determine the operating version of the wireless unit 226 based on the user selection received on the selection screen 820.
[0164] Furthermore, while the above describes the processing during the reception of print data, the same processing can be applied during the reception of other data different from print data, or during the transmission of other data. For example, the same processing can be applied when the reading unit 219 scans a document and transmits the scanned image (image data) to the mobile terminal device (104) via the AP.
[0165] Furthermore, the various controls described above, which are performed by the CPU212, may be performed by a single piece of hardware, or multiple pieces of hardware (for example, multiple processors or circuits) may share the processing to control the entire device.
[0166] Furthermore, although the above-described embodiment was explained using the case of application to an MFP as an example, this embodiment is not limited to this example and can be applied to any wireless device capable of P2P (WLAN) communication based on WFD. That is, it can be applied to personal computers, PDAs, tablet terminals, mobile phone terminals such as smartphones, music players, game consoles, e-book readers, smartwatches, and various measuring devices (sensor devices) such as thermometers and hygrometers. It can also be applied to digital cameras (including still cameras, video cameras, network cameras, and security cameras), printers, scanners, and drones. In addition, it can be applied to video output devices, audio output devices (e.g., smart speakers), media streaming players, and wireless LAN adapters that can connect to USB terminals or LAN cable terminals. Video output devices include devices such as set-top boxes, which acquire (download) videos and still images from the internet specified by a URL instructed by a communication device and output them to a display device connected via a video output terminal such as HDMI (registered trademark). This enables streaming playback on the display device or mirroring display (displaying the content displayed on the communication device on the display device as well). Furthermore, video output devices include media players such as televisions, hard disk recorders, Blu-ray recorders, and DVD recorders, as well as head-mounted displays, projectors, display devices (monitors), and signage devices. It is also applicable to Wi-Fi-connected devices, often referred to as smart home appliances, such as air conditioners, refrigerators, washing machines, vacuum cleaners, ovens, microwave ovens, lighting fixtures, heating appliances, and cooling appliances.
[0167] (Other embodiments) The present invention can also be realized by supplying a program that implements one or more of the functions of the above-described embodiments to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. It can also be realized by a circuit (e.g., an ASIC) that implements one or more functions.
[0168] This embodiment discloses the inventions of the following items: (Item 1) An infrastructure connection means that connects to external devices and infrastructure via an external access point, A direct connection means that connects directly to an external device without going through an external access point, A first acquisition means for acquiring information regarding the security method used in the infrastructure connection by the infrastructure connection means, The system includes a control means that controls the direct connection means to perform the direct connection based on the information regarding the security method obtained by the first acquisition means, A communication device characterized by the following features. (Item 2) The connection process for the direct connection is as follows: It includes a first connection process corresponding to a first security method and a second connection process corresponding to a second security method with a higher security level than the first security method, The control means is Based on the information regarding the security method obtained by the first acquisition means, control is made to cause the direct connection means to perform either the first connection process or the second connection process. A communication device as described in item 1, characterized by the features described herein. (Item 3) The control means is If the information regarding the security method obtained by the first acquisition means is information indicating the second security method, the direct connection means is controlled to perform the second connection process. A communication device as described in item 2, characterized by the features described herein. (Item 4) The control means is If the information regarding the security method obtained by the first acquisition means is information indicating the first security method, the first connection process is controlled to be performed by the direct connection means. A communication device according to item 2 or 3, characterized by the features described herein. (Item 5) The system further comprises a first receiving means capable of receiving a first user instruction to cause the direct connection means to perform either the first connection process or the second connection process based on the information regarding the security method obtained by the first acquisition means, The control means is When the first receiving means receives the first user instruction, the direct connection means is controlled to perform either the first connection process or the second connection process based on the information regarding the security method obtained by the first acquisition means. A communication device according to any one of items 2 to 4, characterized in that it is a communication device. (Item 6) The infrastructure connection means further comprises a second receiving means capable of receiving a second user instruction to cause the direct connection means to execute the first connection process, without relying on information regarding the security method used in the infrastructure connection provided by the infrastructure connection means. The control means is When the second receiving means receives the second user instruction, it controls the direct connection means to perform the first connection process. A communication device as described in item 5, characterized by the features described herein. (Item 7) The system further comprises a third receiving means capable of receiving a third user instruction to cause the direct connection means to perform the second connection process, without relying on information regarding the security method used in the infrastructure connection provided by the infrastructure connection means, The control means is When the third receiving means receives the third user instruction, it controls the direct connection means to perform the second connection process. A communication device as described in item 5 or 6, characterized by the features described herein. (Item 8) The system further includes a notification means that, upon receiving the first user instruction via the first receiving means, notifies the user of whether the first connection process or the second connection process will be performed by the direct connection means. A communication device according to any one of items 5 to 7, characterized by the features described herein. (Item 9) If the information regarding the security method obtained by the first acquisition means indicates a third security method that is different from both the first security method and the second security method, the system further includes a search means for searching for surrounding external access points. The control means is If the information regarding the security method obtained by the first acquisition means is information indicating the third security method, the direct connection means is controlled to perform either the first connection process or the second connection process based on the information regarding the security method used by the external access point discovered by the search means. A communication device according to any one of items 2 to 8, characterized in that it is a communication device. (Item 10) If the information regarding the security method obtained by the first acquisition means indicates a third security method that is different from both the first security method and the second security method, the system further includes a second acquisition means for obtaining information regarding security methods used in past infrastructure connections from a storage means. The control means is If the information regarding the security method obtained by the first acquisition means is information indicating the third security method, the direct connection means is controlled to perform either the first connection process or the second connection process based on the information regarding the security method used in the past infrastructure connection obtained by the second acquisition means. A communication device according to any one of items 2 to 8, characterized in that it is a communication device. (Item 11) If the storage means does not store information regarding the security method used in the past infrastructure connection, the system further includes a fourth receiving means that can accept a user selection of whether to have the direct connection means perform either the first connection process or the second connection process, The control means is Based on the user selection received by the fourth receiving means, control is made to cause the direct connection means to perform either the first connection process or the second connection process. A communication device as described in item 10, characterized by the features described herein. (Item 12) The control means is If the infrastructure connection is not performed by the infrastructure connection means, the system controls the direct connection means to perform the first connection process. A communication device according to any one of items 2 to 8, characterized in that it is a communication device. (Item 13) If infrastructure connection is not established by the aforementioned infrastructure connection means, the system further includes a search means for searching for nearby external access points. The control means is If infrastructure connection is not performed by the infrastructure connection means, the direct connection means is controlled to perform either the first connection process or the second connection process based on information regarding the security method used by the external access point discovered by the search means. A communication device according to any one of items 2 to 8, characterized in that it is a communication device. (Item 14) If infrastructure connection is not performed by the infrastructure connection means, the system further includes a second acquisition means for acquiring information from a storage means regarding the security method used in past infrastructure connections. The control means is If infrastructure connection is not performed by the infrastructure connection means, the direct connection means is controlled to perform either the first connection process or the second connection process based on the information regarding the security method used in the past infrastructure connection obtained by the second acquisition means. A communication device according to any one of items 2 to 8, characterized in that it is a communication device. (Item 15) If the storage means does not store information regarding the security method used in the past infrastructure connection, the system further includes a fourth receiving means that can accept a user selection of whether to have the direct connection means perform either the first connection process or the second connection process, The control means is Based on the user selection received by the fourth receiving means, control is made to cause the direct connection means to perform either the first connection process or the second connection process. A communication device as described in item 14, characterized by the features described herein. (Item 16) The first connection process is as follows: This process conforms to the Wi-Fi Direct standard 1. The second connection process is as follows: This is a process that conforms to the second Wi-Fi Direct standard, which was published after the first standard mentioned above. A communication device according to any one of items 2 to 15, characterized in that it is a communication device. (Item 17) The first security method described above is: It uses the WPA (Wi-Fi Protected Access) 2 protocol. The second security method described above is: It uses the WPA3 protocol. A communication device according to any one of items 2 to 16, characterized in that it is a communication device. (Item 18) The aforementioned communication device is a printer. A communication device according to any one of items 1 to 17, characterized by the features described herein. (Item 19) An infrastructure connection means that connects to external devices and infrastructure via an external access point, A control method for a communication device comprising a direct connection means for directly connecting to an external device without going through an external access point, The control method described above is A first acquisition step of acquiring information regarding the security method used in the infrastructure connection by the infrastructure connection means, A control step includes controlling the direct connection means to perform the direct connection based on the information regarding the security method obtained in the first acquisition step, A method for controlling a communication device, characterized by the features described above. (Item 20) A program for causing a computer to function as one of the means of a communication device described in any one of items 1 through 18. (Item 21) A computer-readable storage medium for storing programs that cause a computer to function as one of the means of a communication device described in any one of items 1 through 18.
[0169] The invention is not limited to the embodiments described above, and various modifications and variations are possible without departing from the spirit and scope of the invention. Accordingly, claims are attached to disclose the scope of the invention. [Explanation of symbols]
[0170] 100 MFP: 101 AP: 103 DHCP Server: 104 Mobile Terminal Device: 212 CPU: 213 ROM: 214 RAM
Claims
1. An infrastructure connection means that connects to external devices and infrastructure via an external access point, A direct connection means that connects directly to an external device without going through an external access point, A first acquisition means for acquiring information regarding the security method used in the infrastructure connection by the infrastructure connection means, The system includes a control means that controls the direct connection means to perform the direct connection based on the information regarding the security method obtained by the first acquisition means, A communication device characterized by the following features.
2. The connection process for the direct connection is as follows: It includes a first connection process corresponding to a first security method and a second connection process corresponding to a second security method with a higher security level than the first security method, The control means is Based on the information regarding the security method obtained by the first acquisition means, control is made to cause the direct connection means to perform either the first connection process or the second connection process. The communication device according to feature 1.
3. The control means is If the information regarding the security method obtained by the first acquisition means is information indicating the second security method, the direct connection means is controlled to perform the second connection process. The communication device according to feature 2.
4. The control means is If the information regarding the security method obtained by the first acquisition means is information indicating the first security method, the first connection process is controlled to be performed by the direct connection means. The communication device according to feature 2.
5. The system further includes a first receiving means capable of receiving a first user instruction to cause the direct connection means to perform either the first connection process or the second connection process based on the information regarding the security method acquired by the first acquisition means, The control means is When the first receiving means receives the first user instruction, the direct connection means is controlled to perform either the first connection process or the second connection process based on the information regarding the security method obtained by the first acquisition means. The communication device according to feature 2.
6. The infrastructure connection means further comprises a second receiving means capable of receiving a second user instruction to cause the direct connection means to execute the first connection process, without being based on information regarding the security method used in the infrastructure connection by the infrastructure connection means, The control means is When the second receiving means receives the second user instruction, it controls the direct connection means to perform the first connection process. The communication device according to feature 5.
7. The system further comprises a third receiving means capable of receiving a third user instruction to cause the direct connection means to perform the second connection process, without relying on information regarding the security method used in the infrastructure connection provided by the infrastructure connection means, The control means is When the third receiving means receives the third user instruction, it controls the direct connection means to perform the second connection process. The communication device according to feature 5.
8. The system further includes a notification means that, upon receiving the first user instruction via the first receiving means, notifies the user of whether the first connection process or the second connection process will be performed by the direct connection means. The communication device according to feature 5.
9. If the information regarding the security method obtained by the first acquisition means indicates a third security method that is different from both the first security method and the second security method, the system further includes a search means for searching for surrounding external access points. The control means is If the information regarding the security method obtained by the first acquisition means is information indicating the third security method, the direct connection means is controlled to perform either the first connection process or the second connection process based on the information regarding the security method used by the external access point discovered by the search means. The communication device according to feature 2.
10. If the information regarding the security method obtained by the first acquisition means indicates a third security method that is different from both the first security method and the second security method, the system further includes a second acquisition means for obtaining information regarding security methods used in past infrastructure connections from a storage means. The control means is If the information regarding the security method obtained by the first acquisition means is information indicating the third security method, the direct connection means is controlled to perform either the first connection process or the second connection process based on the information regarding the security method used in the past infrastructure connection obtained by the second acquisition means. The communication device according to feature 2.
11. If the storage means does not store information regarding the security method used in the past infrastructure connection, the system further comprises a fourth receiving means capable of receiving a user selection of whether to have the direct connection means perform either the first connection process or the second connection process, The control means is Based on the user selection received by the fourth receiving means, control is made to cause the direct connection means to perform either the first connection process or the second connection process. The communication device according to feature 10.
12. The control means is If the infrastructure connection is not performed by the infrastructure connection means, the system controls the direct connection means to perform the first connection process. The communication device according to feature 2.
13. If infrastructure connection is not established by the aforementioned infrastructure connection means, the system further includes a search means for searching for nearby external access points. The control means is If infrastructure connection is not performed by the infrastructure connection means, the direct connection means is controlled to perform either the first connection process or the second connection process based on information regarding the security method used by the external access point discovered by the search means. The communication device according to feature 2.
14. If infrastructure connection is not performed by the infrastructure connection means, the system further includes a second acquisition means for acquiring information from a storage means regarding the security method used in past infrastructure connections. The control means is If infrastructure connection is not performed by the infrastructure connection means, the direct connection means is controlled to perform either the first connection process or the second connection process based on the information regarding the security method used in the past infrastructure connection obtained by the second acquisition means. The communication device according to feature 2.
15. If the storage means does not store information regarding the security method used in the past infrastructure connection, the system further comprises a fourth receiving means capable of receiving a user selection of whether to have the direct connection means perform either the first connection process or the second connection process. The control means is Based on the user selection received by the fourth receiving means, control is made to cause the direct connection means to perform either the first connection process or the second connection process. The communication device according to feature 14.
16. The first connection process is, This processing conforms to the first standard of Wi-Fi Direct. The second connection process described above is: This processing conforms to the second Wi-Fi Direct standard, which was published after the first standard mentioned above. The communication device according to feature 2.
17. The first security method is, It uses the WPA (Wi-Fi Protected Access) 2 method. The second security method described above is: It uses the WPA3 protocol. The communication device according to feature 2.
18. The aforementioned communication device is a printer. The communication device according to feature 1.
19. An infrastructure connection means that connects to external devices and infrastructure via an external access point, A control method for a communication device comprising a direct connection means for directly connecting to an external device without going through an external access point, The control method described above is A first acquisition step of acquiring information regarding the security method used in the infrastructure connection by the infrastructure connection means, A control step includes controlling the direct connection means to perform the direct connection based on the information regarding the security method obtained in the first acquisition step, A method for controlling a communication device, characterized by the features described above.
20. A program for causing a computer to function as one of the means of a communication device according to any one of claims 1 to 18.
21. A computer-readable storage medium for storing a program that causes a computer to function as one of the means of a communication device according to any one of claims 1 to 18.