Communication device, its control method, program and storage medium
The communication device optimizes connection processing by storing device information to skip unnecessary parameter sharing, enhancing efficiency and security in WFD connections.
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
The existing WFD standard requires user intervention for parameter sharing during device reconnection, which is cumbersome, and omitting this process can compromise security when connecting with external devices.
A communication device is equipped with storage control means to store information about devices that can omit parameter sharing, and control means to skip this process based on stored information, ensuring secure and efficient connection processing.
Enables secure and efficient connection processing with external devices by allowing parameter sharing to be skipped when necessary, addressing the cumbersome nature of manual intervention while maintaining security.
Smart Images

Figure 2026095123000001_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), high peak throughput of up to 9.6 gigabits per second (Gbps) and technologies for 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 has been formulated, which 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). WFD is an abbreviation for Wi-Fi Direct (registered trademark).
[0004] In addition, the Wi-Fi Aware standard, which is a standard for exploring services provided by devices, has also been formulated. For example, Patent Document 1 describes detecting a communication terminal using the provisions of the Wi-Fi Aware standard. Also, Patent Document 2 discloses a method of storing connection information for reconnecting via Wi-Fi Direct.
Prior Art Documents
Patent Documents
[0005] [Patent Document 1] Japanese Patent Publication No. 2019-201427 [Patent Document 2] Japanese Patent Publication No. 2018-125774 [Overview of the Initiative] [Problems that the invention aims to solve]
[0006] In a given WFD standard, the process of sharing parameters necessary for connection between devices may require user intervention to share those parameters. For example, if the process of sharing parameters is performed every time a reconnection is executed between devices, it becomes cumbersome. Therefore, a given WFD standard is designed to allow the process of sharing parameters during reconnection between devices to be omitted. On the other hand, if a communication device always omits the process of sharing parameters with an external device with which it has already established a connection when connecting, security concerns may arise. Therefore, technology is needed to properly handle the connection process when a communication device connects with an external device.
[0007] The exemplary objective of this invention is to provide a technology for appropriately performing connection processing when a communication device connects to an external device. [Means for solving the problem]
[0008] According to the present invention, a communication device is provided, comprising: communication means capable of performing wireless communication in a predetermined communication method between the communication device and an external device without going through an external access point; and receiving means for receiving a request for the wireless communication from the external device, wherein a connection process for connecting the communication device and the external device for the wireless communication includes a parameter sharing process for sharing parameters used for the connection between the communication device and the external device, and the communication device comprises: first storage control means for controlling the storage means to store information indicating that the external device is a device that can omit the parameter sharing process; and control means for controlling the connection process to omit the parameter sharing process when the request is received from the external device, based on the fact that the storage means has stored information indicating that the external device is a device that can omit the parameter sharing process. [Effects of the Invention]
[0009] According to the present invention, it is possible to provide a technology for appropriately performing connection processing when a communication device connects to an external device. [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 flowchart shows the processes performed by the MFP. [Figure 11] This flowchart shows the processes performed by the MFP. [Figure 12] 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) Figure 1 shows an example of the system configuration according to this embodiment. In one example, this system is a wireless communication system in which multiple communication devices can communicate with each other wirelessly. In the example in Figure 1, the communication devices include a mobile terminal device 104, an MFP 100, an access point AP 101, a DHCP server 103, a DNS server 105, and a network 110. The mobile terminal device 104 is a device that has wireless communication functionality such as a wireless LAN. In the following, wireless LAN may be referred to as WLAN. The mobile terminal device 104 may 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 MFP100 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 MFP100 of the present embodiment has a communication function capable of wireless communication with the mobile terminal device 104. In the present embodiment, the case where the MFP100 is used as an example will be described, but it is not limited thereto. For example, a scanner device, a projector, a mobile terminal, a smartphone, a notebook PC, a tablet terminal, a PDA, a digital camera, a music playback device, a television, a smart speaker, etc., each having a communication function, may be used instead of the MFP100. Note that MFP is an acronym for Multi Function Peripheral (multifunction peripheral device).
[0014] The 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 the AP101. In the following, the access point may be referred to as "AP" in some cases. Also, the infrastructure mode may be referred to as the "wireless infrastructure mode" in some cases. The AP101 performs wireless communication with a communication device that has permitted (authenticated) connection to the self-device, and relays wireless communication between the communication device and other communication devices. Also, the AP101 can be connected to, for example, a wired communication network and relay communication between a communication device connected to the wired communication network and another communication device wirelessly connected to the AP101.
[0015] The DHCP server 103 is connected to the MFP 100 via the AP 101 and the network 110, and provides services to the MFP 100 by responding to requests from the MFP 100. In FIG. 1, the DHCP server 103 is described as being connected as a device separate from the AP 101, but the AP 101 may have a DHCP server function. The DNS server 105 is connected to the MFP 100 and the mobile terminal device 104 via the AP 101 and the network 110, and provides services for name resolution by responding to requests from the MFP 100 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] (Appearance Configuration of MFP) FIG. 2(a) shows an example of the external appearance configuration of the MFP 100. The MFP 100 has, for example, a document table 201, a document cover 202, a printing paper insertion slot 203, a printing paper discharge slot 204, and an operation display unit 205. The document table 201 is a table for placing the document to be read. The document cover 202 is a cover for pressing the document placed on the document table 201 and preventing light from the light source that irradiates the document during reading from leaking outside. The printing paper insertion slot 203 is an insertion slot where papers of various sizes can be set. The printing paper discharge slot 204 is a discharge slot for discharging the printed paper. The papers set in the printing paper insertion slot 203 are conveyed to the printing unit one by one, and after being printed by the printing unit, are discharged from the printing paper discharge slot 204. The operation display unit 205 is composed of keys such as a character input key, a cursor key, a determination key, and a cancellation key, and includes an LED, an LCD, etc., and is configured to be able to receive operations for starting various functions as an MFP by the user and various setting operations. Also, the operation display unit 205 may be composed of a touch panel display. The MFP 100 has a wireless communication function by WLAN, and although it does not necessarily need to be visually recognizable from the outside, it is composed of an antenna 206 for wireless communication for that wireless communication. The MFP 100 can also perform wireless communication in the frequency bands of 2.4 GHz, 5 GHz, and 6 GHz by WLAN, similar to the mobile terminal device 104.
[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:
[0045] • 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.
[0046] 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.
[0047] ● 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.
[0048] ●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.
[0049] (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.
[0050] 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 standard 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). 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: sending and receiving (exchanging) 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).
[0051] (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.
[0052] 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.
[0053] 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.
[0054] 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.
[0055] 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.
[0056] 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. Alternatively, the MFP 100 may 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 by setting its intent value to the maximum of 15, ensuring it always operates as the GO. 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.
[0057] 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.
[0058] 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.
[0059] 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.
[0060] 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.
[0061] 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.
[0062] In S612, the mobile terminal device 104 and the MFP 100 perform a 4-way handshake.
[0063] 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.
[0064] (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.
[0065] 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.
[0066] 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. In the following, the device ID key may be referred to as DevIK. DevIK is an abbreviation for Device Identification Key.
[0067] 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.
[0068] 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.
[0069] 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.
[0070] 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 as described in item 902 below, 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 SSID, 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. The parameters obtained here are used in pasn authentication in S706, Authentication in S710, and Association Request in S712, which are described below.
[0071] 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.
[0072] 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.
[0073] 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.
[0074] 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.
[0075] 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.
[0076] In S714, the mobile terminal device 104 and the MFP 100 perform a 4-way handshake.
[0077] 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.
[0078] (Reconnection process according to the second standard) The second standard specifies that, when devices are reconnected, the bootstrapping process (communication parameter sharing) performed by each device in steps S703 to S705 can be omitted.
[0079] For example, suppose that the mobile terminal device 104 and the MFP 100 execute the processes S701 to S714 using WFD R2 and establish a connection. Once the connection between the MFP 100 and the mobile terminal device 104 is established, the MFP 100 stores the DevIK of the mobile terminal device 104, information indicating the validity period of the DevIK, and other information necessary for reconnection, which it received from the mobile terminal device 104 in S701, in RAM 214. Similarly, the mobile terminal device 104 stores the DevIK of the MFP 100, the validity period of the DevIK, and other information necessary for reconnection, which it received from the MFP 100 in S702, in RAM 414.
[0080] Next, if the connection between the mobile terminal device 104 and the MFP 100 is disconnected and then the devices reconnect using WFD R2, processing will start from S701.
[0081] In S701, when the CPU 212 receives a Service Discovery frame from the mobile terminal device 104, it reads the DevIK stored in RAM 214 and information indicating the validity period of the said DevIK. The CPU 212 then determines whether the DevIK received in S701 and the DevIK read from RAM 214 are the same, and whether the DevIK read from RAM 214 is within its validity period. If the CPU 212 determines that they are the same and within their validity period, in S702 it responds to the mobile terminal device 104 with the DevIK used in the previous connection.
[0082] In S702, when the mobile terminal device 104 receives a Service Discovery frame from the MFP 100, it reads the DevIK stored in RAM 414 and information indicating the validity period of the said DevIK. The mobile terminal device 104 then determines whether the DevIK received in S702 and the DevIK read from RAM 414 are the same, and whether the DevIK read from RAM 414 is within its validity period. If the mobile terminal device 104 determines that they are the same and within their validity period, it proceeds to processing S706 without sending a parameter sharing request using a Bootsstrapping Request frame in S703. In other words, if the mobile terminal device 104 determines that they are the same and within their validity period, it skips the Bootsstrapping processing in S703 to S705 and proceeds to processing S706. The communication parameters required in S706 are the data stored in RAM 414 during the previous connection. When reconnecting using this method, it is possible to omit the bootstrapping process in S703-S705.
[0083] However, if the connection between the mobile terminal device 104 and the MFP 100 is interrupted and then the devices are reconnected using WFD R2, a security concern may arise if the parameter sharing process between the MFP 100 and the mobile terminal device 104 is always omitted. Therefore, technology is needed to appropriately control the MFP 100 when establishing a connection with the mobile terminal device 104, which is an external device.
[0084] Therefore, in this embodiment, when the CPU 212 receives a request (Service Discovery frame) from the mobile terminal device 104 to establish a connection using a predetermined communication standard (WFD R2), it controls the MFP 100 as follows. The CPU 212 controls the connection process using WFD R2 to omit the parameter sharing process if information indicating that the mobile terminal device 104 is a device that can omit the parameter sharing process is stored in memory such as the RAM 214. In other words, the CPU 212 controls the connection process between the MFP 100 and the mobile terminal device 104 to omit the parameter sharing process only for a specific mobile terminal device 104. This type of processing control enhances user convenience when the MFP 100 establishes a connection with the mobile terminal device 104 while ensuring the security of the MFP 100. That is, the MFP 100 can be appropriately controlled when establishing a connection with the mobile terminal device 104, which is an external device.
[0085] The following describes an example of a screen displayed on the operation display unit 220 of the MFP100, referring to Figures 8(a) to 9(h).
[0086] Figure 8(a) shows an example of the Wireless Direct menu screen 800 displayed when "Wireless Direct" is selected in the screen shown in Figure 3(c). The menu screen 800 displays the various setting items 801 to 804 related to Wireless Direct of the MFP100. The menu screen 800 displays item 801 "Setting Information Display", item 802 "Enable / Disable Wireless Direct", and item 803 "Connection Request Confirmation Settings". When any of the items 801 to 804 is selected by the user, the CPU 212 displays the screen corresponding to the selected item on the operation display unit 220.
[0087] Items such as item 804 may be displayed on menu screen 800 to accept user selection only when the MFP100 is operating in administrator mode. Administrator mode will be explained in detail later.
[0088] Figure 8(b) shows an example of the settings display screen 810 that appears when "Display Settings Information" item 801 in Figure 8(a) is selected. The settings display screen 810 displays the items "Connection Status," "Network Name (SSID)," "Password," and "Wi-Fi Security," along with their detailed information.
[0089] Figure 8(c) shows an example of the settings screen 820 displayed when item 802 "Enable / Disable Wireless Direct" in Figure 8(a) is selected. The settings screen 820 displays "Enable" for button 821 and "Disable" for button 822. If button 821 is selected, information indicating that the wireless direct setting of the MFP100 is enabled is stored in RAM 214. If button 822 is selected, information indicating that the wireless direct setting of the MFP100 is disabled is stored in RAM 214. This information may also be stored in non-volatile memory 215.
[0090] Figure 8(d) shows an example of the settings screen 830 displayed when item 803, "Confirmation setting for connection request," in Figure 8(a) is selected. The settings screen 830 displays items 831, "QR code," 832, "Button," 833, "Bluetooth," 834, "NFC," 835, "Do not confirm," and 836, "Do not select." Selecting item 835, "Do not confirm," means that the system accepts instructions to execute a parameter sharing method that does not involve user operation. When item 835 is selected, the parameter sharing process involves the MFP 100 receiving a request to share parameters, and then sharing parameters between the MFP 100 and the mobile terminal device 104 without any user operation on either the MFP 100 or the mobile terminal device 104. Selecting item 836, "Do not select," means that the user does not specify a parameter sharing method, in which case the appropriate parameter sharing method is determined according to the operating state of the MFP 100. When any of these items is selected, the setting value for the parameter sharing method used for connection in WFD R2 shown in Figure 7 is stored in the non-volatile memory 215. Note that the settings screen 830 may also be displayed when button 821 is selected in the settings screen 820 shown in Figure 8(c).
[0091] Figure 8(e) shows an example of the setup screen 840 displayed when the MFP 100 starts a process (hereinafter referred to as the network setup process) in which it operates in network setup mode capable of receiving network configuration requests from external devices such as the mobile terminal device 104.
[0092] In this embodiment, the mobile terminal device 104 can perform the process of connecting the MFP 100 to an already established Local Area Network (LAN). Such a process is also called network setup processing and includes the following operations.
[0093] In order to establish a wireless infrastructure connection (hereinafter referred to as "wireless infrastructure connection") between the mobile terminal device 104 and the MFP 100 and communicate, the mobile terminal device 104 sends network setup instructions to the MFP 100. A wireless infrastructure connection is a connection via an access point (AP), such as when the mobile terminal device 104 and the MFP 100 are connected to the same AP and communicate. An AP is, for example, a wireless LAN router. For example, in the case of the MFP 100, which does not have a separate display, it is not easy for the user to correctly enter identification information such as the Service Set Identifier (SSID) and password for the MFP 100 to connect to the AP. Therefore, the mobile terminal device 104 temporarily establishes a wireless direct connection with the MFP 100 in network setup mode and sends information such as the SSID and password for the desired AP to connect to (hereinafter referred to as AP configuration information) to the MFP 100 as a network configuration request, causing the MFP 100 to connect to that AP. For example, the mobile terminal device 104 obtains a list of APs that the MFP 100 can connect to from the MFP 100. If the AP to which the mobile terminal device 104 was previously connected is included in that list, the mobile terminal device 104 sends the configuration information of the AP to which it was previously connected to the MFP 100. The MFP 100 then uses the configuration information of the AP received from the mobile terminal device 104 to connect to that AP. Since this process does not require any operation of the MFP 100 or the AP by the user, the user can more easily set up the network for the MFP 100.
[0094] The setup screen 840 displays instructions for the user and the "Stop" button 841. If the user selects button 841, the network setup mode process of the MFP100 is canceled.
[0095] Figure 8(f) shows an example of the error screen 850 displayed when an error occurs in the MFP100. An error state refers to a condition where printing or scanning is impossible with the MFP100. The error screen 850 displays a "support number" to identify the type of error, as well as text explaining the error and how to resolve it.
[0096] Figure 8(g) shows an example of the job progress display screen 860, which is displayed when a job is running on the MFP100. The job progress display screen 860 displays text explaining the job's progress and a "Stop" button 861. If the user selects the "Stop" button 861, the job running on the MFP100 is canceled.
[0097] Figure 8(h) shows an example of the error screen 870 displayed when an error occurs in the MFP100 and a parameter sharing request is received from the mobile terminal device 104 via WFD R2 as shown in Figure 7. The error screen 870 indicates an error state where there is no paper in the paper tray for printing. If there is no paper in the paper tray, the MFP100 cannot perform printing. In this embodiment, an error is defined as a state in which normally executable processes such as printing and scanning are not possible in the MFP100. Before receiving the parameter sharing request via WFD R2 as shown in Figure 7, the icon 871 is not displayed on the error screen 870, but after receiving the parameter sharing request, the icon 871 is added to the error screen 870. The icon 871 indicates that a parameter sharing request has been received and is an operation item (display item) for displaying the confirmation screen 910, described later, to accept approval for parameter sharing. In this embodiment, when a parameter sharing request is received while the error screen is displayed, the parameter sharing method is a button method (approval operation method). When icon 871 is operated (pressed or touched), the system transitions to confirmation screen 910, which uses a button system as shown in Figure 9(b). In other words, confirmation screen 910 is a parameter sharing screen that asks the user whether to allow parameter sharing.
[0098] Figure 8(i) shows an example of the job progress display screen 880 displayed when the MFP 100 is executing a job and receives a parameter sharing request from the mobile terminal device 104 using the WFD R2 shown in Figure 7. In this embodiment, a job is, for example, a print job or a scan job. That is, Figure 8(i) is the screen displayed while printing or scanning is in progress. Before receiving the parameter sharing request from the WFD R2 shown in Figure 7, the icon 881 is not displayed on the job progress display screen 880. When the parameter sharing request is received, the icon 881 is added to the job progress display screen 880. The icon 881 indicates that a parameter sharing request has been received and is an operation item (display item) for displaying a confirmation screen to obtain approval for parameter sharing. In this embodiment, when a parameter sharing request is received while the job progress display screen 880 is displayed, the parameter sharing method is button-based. When the icon 880 is operated (pressed, touched), the system transitions to the button-based confirmation screen 910 shown in Figure 9(b).
[0099] Figure 9(a) shows an example of the parameter sharing screen 900 displayed when parameter sharing is performed using the QR code method in the WFD R2 connection process shown in Figure 7 between the MFP 100 and the mobile terminal device 104. The parameter sharing screen 900 displays instructions for the user, item 901, "Name of WFD-compatible device", item 902, "QR code", and button 903, "Stop". Item 901, "Name of WFD-compatible device", displays the name of the mobile terminal device 104 that is making the WFD connection request. Item 902, "QR code", displays a QR code, which is a code image containing parameter information such as the BSSID and passphrase necessary for establishing the WFD R2 connection in Figure 7. Parameter sharing via QR code is performed when the code image is read by the mobile terminal device 104, thereby sharing parameters between the MFP 100 and the mobile terminal device 104. When the user selects button 903, the WFD R2 connection process in Figure 7 is canceled. Parameter sharing via QR codes does not involve transmitting various connection parameters over wireless radio waves, thus eliminating the risk of information leakage through wireless interception. Parameters will not be leaked unless the QR code is read optically. However, the user is required to activate the camera on the mobile terminal device 104 to read the QR code.
[0100] Figure 9(b) shows an example of the parameter sharing screen 910 displayed when parameter sharing is performed using the button method in the WFD R2 connection process shown in Figure 7 between the MFP 100 and the mobile terminal device 104. The parameter sharing screen 910 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 910 also displays the identification information of the device requesting the parameter sharing, and buttons 911 ("Yes") and 912 ("No"). If the user selects "Yes" for button 911, it indicates that the user has authorized (approved) parameter sharing, and the parameter sharing necessary to establish the WFD R2 connection between the MFP 100 and the mobile terminal device 104 as shown in Figure 7 is performed. On the other hand, if the user selects "No" for button 912, 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 parameter sharing is presented (e.g., displaying "Yes" on button 911, 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.
[0101] Figure 9(c) shows an example of the parameter sharing screen 920 displayed when parameter sharing is performed using the NFC tag method in the WFD R2 connection process shown in Figure 7 between the MFP 100 and the mobile terminal device 104. The parameter sharing screen 920 displays instructions for the user and a "Stop" button 921. When the user brings the mobile terminal device 104 close to the NFC tag (not shown) mounted on the MFP 100, parameter sharing necessary for establishing the WFD R2 connection between the MFP 100 and the mobile terminal device 104 as shown in Figure 7 is performed. On the other hand, when the user selects "Stop" on button 921, the WFD R2 connection process between the MFP 100 and the mobile terminal device 104 as shown in Figure 7 is canceled.
[0102] Figure 9(d) shows an example of the parameter sharing screen 930 displayed when parameter sharing is performed using the Bluetooth method during the WFD R2 connection process shown in Figure 7 between the MFP100 and the mobile terminal device 104. The parameter sharing screen 930 displays instructions for the user and the "Stop" button 908. Once a connection is established between the MFP100 and the mobile terminal device 104 via Bluetooth or Bluetooth Low Energy, the parameter sharing necessary for establishing the WFD R2 connection as shown in Figure 7 is performed. On the other hand, if the user selects "Stop" on button 931, the WFD R2 connection process between the MFP100 and the mobile terminal device 104 as shown in Figure 7 is canceled.
[0103] Figure 9(e) shows an example of the connection completion screen 940 displayed when a connection is established between the MFP100 and the mobile terminal device 104 using the WFD R2 as shown in Figure 7. The connection completion screen 940 displays instructions for the user and the "OK" button 941. If the user selects "OK" on button 941, the screen transitions to the screen shown in Figure 3(a). Alternatively, the screen may transition to another screen. Note that the connection completion screen 940 does not need to be displayed when a connection is established between the MFP100 and the mobile terminal device 104 using the WFD R2 as shown in Figure 7.
[0104] Figure 9(f) shows an example of the registration screen 950 displayed after the MFP 100 and the mobile terminal device 104 have established a connection via WFD R2, allowing the mobile terminal device 104 to register as a device for which parameter sharing processing can be omitted. Note that Figure 9(f) may only be displayed when the MFP 100 is in administrator mode. The registration screen 950 displays "Yes" for button 951 and "No" for button 952. Button 951 is a button that accepts user input for registering the mobile terminal device 104 as a device for which parameter sharing processing can be omitted. If the user selects "Yes" for button 951, the CPU 212 stores information (setting values) indicating that the mobile terminal device 104 is a device for which parameter sharing can be omitted in the non-volatile memory 215. On the other hand, button 952 is a button that accepts user input for registering the mobile terminal device 104 as a device for which parameter sharing processing cannot be omitted. If the user selects "No" on button 912, the CPU 212 stores information (setting values) in the non-volatile memory 215 indicating that the mobile terminal device 104 is a device for which parameter sharing cannot be omitted (a device that performs parameter sharing processing).
[0105] Figure 9(g) shows an example of the registration completion screen 960 displayed when the mobile terminal device 104 is registered as a device for which parameter sharing can be omitted. The registration completion screen 960 displays instructions for the user, an "OK" button 961, etc. If the user selects button 961, the screen may transition to the screen shown in Figure 3(a) or to another screen.
[0106] Figure 9(h) shows an example of the parameter sharing request terminal settings screen 970 displayed when item 804 "Connection request terminal settings" in Figure 8(a) is selected. Note that the settings screen 970 may only be displayed when the MFP100 is in administrator mode. The settings screen 970 is a screen that accepts user operations for registering devices for which parameter sharing processing can be omitted. The settings screen 970 displays the "WFD connection device name" in items 971 to 974, and interfaces 975 to 978 corresponding to items 971 to 974. Items 971 to 974 display a list of candidate devices for which parameter sharing processing can be omitted. In this example, multiple external devices, including the mobile terminal device 104, are displayed in items 971 to 974 as candidates for devices for which parameter sharing processing can be omitted. As will be described later, when a connection is established between the MFP100 and an external device such as the mobile terminal device 104, information indicating that the connected external device is a candidate for a device for which parameter sharing processing can be omitted is stored in the RAM 214. On the settings screen 970, items 971 to 974 are displayed based on the information provided.
[0107] Interfaces 975 to 978 are user interfaces that can accept user operations to individually register each of the external devices displayed in items 971 to 974 as devices for which parameter sharing processing can be omitted. Interfaces 975 to 978 are, for example, toggle switches, slide switches, etc. In the example in Figure 9(h), interface 975 is in a state where it is accepting a user operation to register the external device displayed in item 971 as a device for which parameter sharing processing can be omitted. When such a user operation is accepted, the CPU 212 stores information in the RAM 214 indicating that the external device displayed in item 971 is a device for which parameter sharing processing can be omitted. Interfaces 976 to 978 are in a state where they are accepting user operations to individually register each of the external devices displayed in items 972 to 974 as devices for which parameter sharing processing cannot be omitted. When such user input is received, the CPU 212 stores in the RAM 214 information indicating that each of the external devices listed in items 972 to 974 is a device for which parameter sharing processing cannot be omitted.
[0108] This settings screen 970 allows the user to determine whether or not to register each external device as a device for which parameter sharing processing can be omitted after a connection has been established between the MFP 100 and an external device such as a mobile terminal 104.
[0109] (Connection process performed by MFP100) Figure 10 is a flowchart showing how the MFP 100 in this embodiment establishes a connection via WFD R2 in response to a connection request via WFD R2 from the mobile terminal device 104. The process shown in Figure 10 is realized, for example, by the CPU 212 reading various programs stored in the memory area of the MFP 100, such as the ROM 213, into the RAM 214 and executing them.
[0110] The process in Figure 10 is initiated, for example, when button 821 is pressed on the settings screen 820. That is, in the initial state of the process in Figure 10, item 821 in Figure 8(c) is selected by the user, and the wireless direct setting of the MFP100 is enabled.
[0111] The process shown in Figure 10 may, for example, be executed based on the MFP 100 starting network setup mode processing. The trigger for the MFP 100 to start network setup mode processing may be the reception of a network setup instruction from the mobile terminal device 104. Alternatively, the trigger may be, for example, the user pressing the network setup mode button. Another trigger may be the MFP 100 being powered on for the first time after delivery. The network setup button may be a hard button on the MFP 100, or a soft button displayed on the operation display unit 220 of the MFP 100.
[0112] In S1001, the CPU212 starts the wireless direct operation of the MFP100. Specifically, for example, the CPU212 starts the MFP100 in WFD mode as the wireless direct operation. The CPU212 may also start the MFP100 in both WFD mode and soft AP mode as the wireless direct operation.
[0113] In S1002, the CPU 212 determines whether or not it has received a search frame (Service Discovery frame) from the mobile terminal device 104 using WFD R2 to search for a communication device. If the CPU 212 determines that it has received a search frame, it proceeds to S1003. On the other hand, if the CPU 212 determines that it has not received a search frame, it repeats the process in S1002.
[0114] The search frame received from the mobile terminal device 104 includes information such as the device ID key (DevIK), which is the identification information of the mobile terminal device 104, information indicating the validity period of the device ID key, and a caching enable bit indicating whether the device ID key can be referenced. Receiving this search frame corresponds to the processing of S701 in Figure 7. The validity period of the DevIK is specified in hours. The CPU 212 starts measuring time after receiving the DevIK and may discard the DevIK if the validity period becomes 0 after deducting 1 every hour.
[0115] In S1003, the CPU 212 determines whether the caching enable bit included in the search frame received from the mobile terminal device 104 in S1002 is valid. If the received caching enable bit is valid, the CPU 212 can access the DevIK cached in the MFP 100. On the other hand, if the received caching enable bit is invalid, the CPU 212 cannot access the DevIK cached in the MFP 100. In other words, if the received caching enable bit is invalid, the CPU 212 cannot determine whether the DevIK received in S1002 matches the already received DevIK. In such a case, the CPU 212 cannot skip the Bootstrapping process in S703-S705. Therefore, if the CPU 212 determines that it is valid, it proceeds to S1004. On the other hand, if the CPU 212 determines that it is invalid, it proceeds to S1008.
[0116] In S1004, the CPU 212 determines whether the DevIK of the mobile terminal device 104 received in S1002 matches the DevIK cached in the MFP 100. If the CPU 212 determines that they match, it proceeds to S1005. On the other hand, if the CPU 212 determines that they do not match, it proceeds to S1008.
[0117] In S1005, the CPU 212 determines whether the DevIK of the mobile terminal device 104 received in S1002 is registered as a terminal that will skip the bootstrapping process in S703 to S705. If the CPU 212 determines that it is registered, it proceeds to S1007. On the other hand, if the CPU 212 determines that it is not registered, it proceeds to S1006.
[0118] In S1005, specifically, the CPU 212 refers to the RAM 214. The CPU 212 then uses the DevIK of the mobile terminal device 104 received in S1002 to determine whether information indicating that the mobile terminal device 104 is a device that can omit parameter sharing processing is stored in the RAM 214. If the information is stored, the CPU 212 proceeds to S1007. On the other hand, if the information is not stored, the CPU 212 proceeds to S1006.
[0119] For example, if it is the first time that the MFP100 and the mobile terminal device 104 are connected, information indicating that the mobile terminal device 104 is a device that can skip the parameter sharing process is not stored in the RAM214. On the other hand, if the MFP100 and the mobile terminal device 104 have been connected before, Figure 10 shows the process for reconnecting the MFP100 and the mobile terminal device 104. In such cases, the process in Figure 10 for connecting the MFP100 and the mobile terminal device 104 as before may store information in the RAM214 indicating that the mobile terminal device 104 is a device that can skip the parameter sharing process. Specifically, for example, when a connection has been established between the MFP100 and the mobile terminal device 104 through the connection process, the registration screen 950 is displayed on the operation display unit 220. Information indicating that the mobile terminal device 104 is a device that can omit parameter sharing processing is stored in the RAM 214 based on the registration screen 950 receiving an operation (pressing button 951) to register the mobile terminal device 104 as a device that can omit parameter sharing processing.
[0120] In S1006, the CPU 212 disables the caching enable bit. The CPU 212 also controls the system to not omit the parameter sharing process when connecting to the mobile terminal device 104 by displaying the parameter sharing screen 900.
[0121] In S1007, the CPU 212 sets the caching enable bit to be enabled. The CPU 212 also controls the system to skip the parameter sharing process when connecting to the mobile terminal device 104 by preventing the display of the parameter sharing screen 900. In this process, the CPU 212 only needs to perform a process to make the mobile terminal device 104 aware that the parameter sharing process will be skipped, such as by enabling the caching enable bit. In other words, the CPU 212 may display the parameter sharing screen 900 in this process, and the mobile terminal device 104, having recognized that the parameter sharing process will be skipped, may skip the process of reading the QR code displayed on the parameter sharing screen 900.
[0122] In S1008, the CPU 212 sends a response frame (Service Discovery frame) to the search frame to the mobile terminal device 104. That is, in S1008, the CPU 212 responds to the wireless connection request (search frame) received from the mobile terminal device 104. The response frame sent from the MFP 100 to the mobile terminal device 104 in S1008 includes information such as the DevIK, which is the identification information of the MFP 100, information indicating the validity period of the DevIK, and a caching enabled bit indicating whether the DevIK can be referenced. The transmission of this response frame corresponds to the process in S702 in Figure 7.
[0123] Here, if the CPU 212 disables the caching enable bit of the MFP 100 in S1006 as described above, the disabled caching enable bit is sent to the mobile terminal device 104 in S1008. That is, the mobile terminal device 104 recognizes that it will not skip the parameter sharing process because a response frame containing the disabled caching enable bit is sent in S1008. Also, for example, if a connection has already been established between the MFP 100 and the mobile terminal device 104, the mobile terminal device 104 will have the DevIK of the MFP 100 and the parameters for communicating with the MFP 100. However, if the caching enable bit sent in S1008 during reconnection is disabled, the mobile terminal device 104 cannot refer to the cached DevIK of the MFP 100 based on the DevIK of the MFP 100 included in the response frame. Therefore, even if a connection has already been established between the MFP100 and the mobile terminal device 104, the mobile terminal device 104 cannot access the parameters for communicating with the MFP100. In other words, by disabling the caching enable bit in S1006, the mobile terminal device 104 performs the process shown in S703 of Figure 7. That is, if the mobile terminal device 104 does not omit the parameter sharing process, it will perform the parameter sharing process again. Then, it will use the various parameters obtained through the newly performed parameter sharing process to perform PASN authentication, Authentication, and Association Request.
[0124] On the other hand, if the CPU 212 sets the caching enable bit of the MFP 100 to be enabled in S1007 as described above, the enabled caching enable bit is sent to the mobile terminal device 104 in S1008. In other words, when the response frame containing the enabled caching enable bit is sent in S1008, the mobile terminal device 104 recognizes that the parameter sharing process will be omitted. The enabled caching enable bit is, in other words, information that allows the mobile terminal device 104 to access the information it holds. As a result, it can be said that the CPU 212 sends information in the response frame indicating whether or not the mobile terminal device 104 is registered as a device that can omit the parameter sharing process. If the caching enable bit of the MFP 100 received from the MFP 100 is enabled, the mobile terminal device 104 can access the DevIK cached in the mobile terminal device 104 based on the DevIK of the MFP 100 included in the response frame. Therefore, when the mobile terminal device 104 reconnects to the MFP 100, if the caching enable bit received from the MFP 100 is valid, it can refer to the parameters for communicating with the MFP 100. That is, by setting the caching enable bit to be enabled in S1007, the mobile terminal device 104 does not send a Bootstrapping Request to the MFP 100 in S703. As a result, the process between the MFP 100 and the mobile terminal device 104 proceeds to the process in S706 without executing the processes in S703 to S705. In other words, if the mobile terminal device 104 omits the parameter sharing process, it reuses the various parameters obtained through the parameter sharing process executed in the previous execution to perform PASN authentication, Authentication, and Association Request.
[0125] Thus, the CPU 212 controls the connection process to omit the parameter sharing process based on the fact that information indicating that the mobile terminal device 104 is a device that can omit the parameter sharing process is stored in the RAM 214 (YES in S1005). In other words, based on the determination of YES in S1005, the CPU 212 controls the transmission of a response frame in S1008 that includes the DevIK of the MFP 100 and a disabled caching enable bit. To put it another way, if the CPU 212 determines YES in S1005, it controls the transmission of a response frame in the S1008 process to omit the parameter sharing process. In this way, even if the MFP 100 and the mobile terminal device 104 have established a connection before, whether or not to omit the parameter sharing process is controlled based on the determination in S1005. This processing control by the CPU 212 enhances user convenience when the MFP 100 establishes a connection with the mobile terminal device 104 while ensuring the security of the MFP 100.
[0126] In S1009, the CPU 212 determines whether or not it has received a parameter sharing request (Bootstrapping Request) to establish a connection between the MFP 100 and the mobile terminal device 104 using WFD R2. If the CPU 212 determines that it has received a parameter sharing request, it proceeds to S1010. On the other hand, if the CPU 212 has not received a parameter sharing request, it proceeds to S1011. This receipt of a parameter sharing request corresponds to the process in S703 in Figure 7.
[0127] In S1010, the CPU 212 sends a parameter sharing response (Bootstrapping Response) to the mobile terminal device 104. This parameter sharing response corresponds to the process in S704 in Figure 7. The CPU 212 then executes a parameter sharing (Bootstrapping) process to establish a connection between the MFP 100 and the mobile terminal device 104 using WFD R2. In this embodiment, if the MFP 100 is operating in network setup mode, the parameter sharing process is executed even without user authorization. This parameter sharing process corresponds to S705 in Figure 7.
[0128] In S1011, the CPU 212 determines whether or not it has received an authentication request (PASN authentication) from the mobile terminal device 104. If the CPU 212 determines that it has received an authentication request, it proceeds to S1012. On the other hand, if the CPU 212 determines that it has not received an authentication request, it proceeds to S1009.
[0129] In S1012, the CPU 212 performs mutual authentication between the MFP 100 and the mobile terminal device 104 using PASN authentication. This mutual authentication corresponds to S706 in Figure 7.
[0130] In S1013, the CPU 212 performs connection processing to establish a wireless connection between the MFP 100 and the mobile terminal device 104. This connection processing corresponds to steps S707 to S714 in Figure 7. Once the connection processing is complete, a wireless connection using WFD R2 is established between the MFP 100 and the mobile terminal device 104. If a wireless connection is established, the CPU 212 may display a connection completion screen 940 on the operation display unit 220 (see Figure 9(e)).
[0131] In S1014, the CPU 212 determines whether to register the mobile terminal device 104, which established a wireless connection in S1013, as a device for which parameter sharing processing can be omitted. If the CPU 212 determines to register it, it proceeds to S1015. On the other hand, if the CPU 212 determines not to register it, it terminates the process shown in Figure 10.
[0132] In S1014, specifically, the CPU 212 displays the registration screen 950 shown in Figure 9(f) on the operation display unit 220. The CPU 212 then accepts user input via the registration screen 950. If item 951 is operated on by the user, the CPU 212 determines to register. On the other hand, if item 952 is operated on, the CPU 212 determines not to register. Note that if the DevIK of the mobile terminal device 104 is already stored in the RAM 214, the CPU 212 may skip displaying the registration screen 950 and terminate the process shown in Figure 10.
[0133] In S1015, the CPU 212 stores information used when reconnecting to the mobile terminal device 104, with which a wireless connection was established in S1013 (hereinafter referred to as reconnection information), in the RAM 214. The reconnection information includes the DevIK of the mobile terminal device 104 with which a wireless connection was established in S1013, information indicating the validity period of the DevIK, and other information necessary for reconnection.
[0134] In S1016, the CPU 212 stores information indicating that the mobile terminal device 104 is a device that can omit parameter sharing processing in the RAM 214, linked to the DevIK stored in S1015.
[0135] In this way, when a connection is established between the MFP100 and the mobile terminal device 104, the CPU212 displays the registration screen 950 on the operation display unit 220. Then, based on the user operation (pressing of button 951) received on the registration screen 950, the CPU212 performs memory control to store information in the RAM214 indicating that the mobile terminal device 104 is a device that can omit parameter sharing processing. This memory control makes it possible to determine whether or not the mobile terminal device 104 is a device that can omit parameter sharing processing when reconnecting between the MFP100 and the mobile terminal device 104.
[0136] As described above, according to this embodiment, when the CPU 212 receives a search frame from the mobile terminal device 104, it controls the MFP 100 as follows: If information indicating that the mobile terminal device 104 is a device that can omit parameter sharing processing is stored in the RAM 214 of the MFP 100, the CPU 212 controls the connection processing in WFD R2 to omit parameter sharing processing. This control ensures the security of the MFP 100 while maintaining user convenience when the MFP 100 establishes a connection with the mobile terminal device 104.
[0137] <Second Embodiment> The second embodiment will now be described in terms of its differences from the first embodiment. In the first embodiment, when a wireless connection is established between the MFP 100 and the mobile terminal device 104, even a regular user can register the mobile terminal device 104 that has established a wireless connection as a device that does not require confirmation of parameter sharing requests. In this embodiment, only users with administrator privileges for the MFP 100 can register the mobile terminal device 104 that has established a wireless connection as a device that does not require confirmation of parameter sharing requests. This configuration allows for limiting the users who can register a device that does not require confirmation of parameter sharing requests, thereby further improving the security of the MFP 100.
[0138] (MFP administrator mode) In this embodiment, the MFP100 can operate in administrator mode. Administrator mode is a mode that restricts which users can change the settings of the MFP100. In other words, when the MFP100 operates in administrator mode, operations and setting changes that are restricted to general users are permitted to users with administrator privileges. By using administrator mode, it is possible to change the settings and manage the MFP100 while maintaining system stability and security.
[0139] When the MFP100 is operating in administrator mode, for example, the CPU212 controls the selection of items 802 and 804 on the menu screen 800 in Figure 8(a) to be accepted only by users with administrator privileges. For example, the CPU212 may accept the selection of items 802 and 804 on the menu screen 800 in Figure 8(a) when a user with administrator privileges is logged into the MFP100. Alternatively, for example, the CPU212 may accept the input of an administrator password to accept the selection of items 802 and 804 on the menu screen 800 in Figure 8(a). The CPU212 may then accept the selection of items 802 and 804 if the entered password matches the administrator password set on the MFP100. As a result, the settings screen 820 in Figure 8(c) and the settings screen 970 in Figure 9(h) will only be displayed to users with administrator privileges.
[0140] (Connection process performed by MFP100) Figure 11 is a flowchart showing how the MFP 100 in this embodiment establishes a connection via WFD R2 in response to a connection request via WFD R2 from the mobile terminal device 104. The process shown in Figure 11 is realized, for example, by the CPU 212 reading various programs stored in the memory area of the MFP 100, such as the ROM 213, into the RAM 214 and executing them.
[0141] Since steps S1101 to S1113 are the same as steps S1001 to S1013 in Figure 10, their explanation will be omitted.
[0142] In S1114, CPU212 determines whether the user using MFP100 has administrative privileges. If CPU212 determines that the user has administrative privileges, the process proceeds to S1115. On the other hand, if CPU212 determines that the user does not have administrative privileges, the process shown in Figure 11 is terminated.
[0143] In S1114, for example, the CPU 212 may determine whether the user logged into the MFP 100 has administrator privileges based on the login information of the MFP 100. That is, the CPU 212 may determine whether a user with administrator privileges is logged in. Alternatively, for example, the CPU 212 may display a screen (not shown) on the operation display unit 220 that can accept input of an administrator password. The CPU 212 may then determine whether the user has administrator privileges based on whether the password accepted on that screen matches the administrator password set for the MFP 100.
[0144] Since steps S1115 to S1117 are the same as steps S1014 to S1016 in Figure 10, their explanation will be omitted.
[0145] In this embodiment, once a connection is established between the MFP 100 and the mobile terminal device 104, the CPU 212 proceeds to S1115 based on the fact that the user using the MFP 100 has administrator privileges. That is, in this embodiment, the registration screen 950 in Figure 9(f) is displayed only to users who have administrator privileges for the MFP 100. This configuration allows only the administrator of the MFP 100 to register the mobile terminal device 104 as a device that omits the parameter sharing process. In other words, it is possible to restrict the users who can register a device that omits the parameter sharing process. This further improves the security of the MFP 100.
[0146] <Third Embodiment> The third embodiment will now be described in terms of its differences from the first and second embodiments. In the embodiments described above, after the connection between the MFP 100 and the mobile terminal device 104 was established, the CPU 212 displayed the registration screen 950 shown in Figure 9(f). When button 951 was pressed on the registration screen 950, the CPU 212 registered the mobile terminal device 104 as a device that would omit parameter sharing. On the other hand, when button 952 was pressed on the registration screen 950, the CPU 212 terminated the connection process without registering the mobile terminal device 104 as a device that would omit parameter sharing.
[0147] In this embodiment, when button 952 is pressed on the registration screen 950, the CPU 212 controls the RAM 214 to store information indicating that the mobile terminal device 104 is a candidate for a device for which parameter sharing processing can be omitted. In this configuration, after establishing a connection between the MFP 100 and the mobile terminal device 104, the mobile terminal device 104 can be registered as a device for which parameter sharing can be omitted at any time.
[0148] (Connection process performed by MFP100) Figure 12 is a flowchart showing how the MFP 100 in this embodiment establishes a connection via WFD R2 in response to a connection request via WFD R2 from the mobile terminal device 104. The process shown in Figure 12 is realized, for example, by the CPU 212 reading various programs stored in the memory area of the MFP 100, such as the ROM 213, into the RAM 214 and executing them.
[0149] Since steps S1201 to S1213 are the same as steps S1001 to S1013 in Figure 10, their explanation will be omitted.
[0150] In S1214, the CPU 212 displays the registration screen 950 shown in Figure 9(f) on the operation display unit 220. Then, the CPU 212 determines whether or not to register the mobile terminal device 104, which established a wireless connection in S1213, as a device for which parameter sharing processing is omitted. If the CPU 212 determines to register (if button 951 is pressed), it proceeds to S1215. On the other hand, if the CPU 212 determines not to register (if button 952 is pressed), it proceeds to S1217.
[0151] Since steps S1215 to S1216 are the same as steps S1015 to S1016 in Figure 10, their explanation will be omitted.
[0152] In S1217, the CPU 212 performs memory control to store information in the RAM 214 indicating that the mobile terminal device 104, with which a wireless connection was established in S1213, is a candidate device for which parameter sharing processing can be omitted. The information indicating that the mobile terminal device 104, with which a wireless connection was established in S1013, is a candidate device for which parameter sharing processing can be omitted is reconnection information used when reconnecting to the mobile terminal device 104.
[0153] Thus, in this embodiment, when button 952 is pressed on the registration screen 950, information indicating that the mobile terminal device 104 is a candidate for a device that can omit parameter sharing processing is stored in the RAM 214. As a result, even when button 952 is pressed on the registration screen 950, the user can register the mobile terminal device 104 as a device that can omit parameter sharing processing at any time using the setting screen 970 in Figure 9(h).
[0154] 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.
[0155] 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.
[0156] 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.
[0157] (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.
[0158] This embodiment discloses the inventions of the following items: (Item 1) A communication device, A communication means capable of performing wireless communication between the communication device and an external device using a predetermined communication method without going through an external access point, The system includes receiving means for receiving requests for wireless communication from the external device, The connection process for connecting the communication device and the external device for the purpose of wireless communication is as follows: This includes a parameter sharing process that shares the parameters used for the connection between the communication device and the external device, The aforementioned communication device is A storage control means controls the storage means to store first information indicating that the external device is a device that can omit the parameter sharing process, The system includes a processing control means that, upon receiving the request from the external device, controls the connection process to omit the parameter sharing process based on the fact that the first information is stored in the storage means, A communication device characterized by the following features. (Item 2) The first piece of information mentioned above is, Previously, when a connection was established between the communication device and the external device through the connection process, a first screen was displayed on the display means that was capable of accepting a first operation to register the external device as a device for which the parameter sharing process could be omitted, and based on the acceptance of said first operation, the information is stored in the storage means. A communication device as described in item 1, characterized by the features described herein. (Item 3) The aforementioned first screen is, This screen is displayed only to users who have administrator privileges for the aforementioned communication device. A communication device as described in item 2, characterized by the features described herein. (Item 4) The memory control means is If the first operation is not accepted by the first screen, the system controls the storage means to store second information indicating that the external device is a candidate for a device that can omit the parameter sharing process. A communication device according to item 2 or 3, characterized by the features described herein. (Item 5) The display control means further provides a second screen on the display means that can accept a second operation for registering a device that omits the parameter sharing process, based on the second information stored in the storage means, The memory control means is Based on the reception of the second operation via the second screen, control is performed to store the first information in the storage means. A communication device as described in item 4, characterized by the features described herein. (Item 6) The display control means is If the second information stored in the storage means indicates that a plurality of devices, including the external device, are candidates for devices that can omit the parameter sharing process, the second screen displays an interface that can accept the second operation for each of the plurality of devices individually. A communication device as described in item 5, characterized by the features described herein. (Item 7) The system further includes a transmission means for transmitting a response to the request to the external device when the request is received from the external device. The processing control means is Based on the fact that the first information is stored in the storage means, control is made to cause the transmission means to send a response to omit the parameter sharing process. A communication device according to any one of items 1 to 6, characterized by the features described herein. (Item 8) The system further includes a transmission means for transmitting a response to the request to the external device when the request is received from the external device. The processing control means is Based on the fact that the first information is stored in the storage means, control is made to cause the transmission means to send a response that includes identification information of the communication device and information that permits access to information held by the external device. A communication device according to any one of items 1 to 6, characterized by the features described herein. (Item 9) The parameter sharing process described above is: Between the communication device and the communication device, one of the following methods is performed: the first method, the second method, the third method, the fourth method, or the fifth method. The first method is a method in which the communication device displays a code image containing the parameter information, and the external device reads the code image, thereby sharing the parameter between the communication device and the external device. The second method is a method in which the parameters are shared between the communication device and the external device via wireless communication based on a predetermined operation being performed on the communication device, The third method is a method by which the parameters are shared between the communication device and the external device without any user operation being performed on the communication device and the external device after a request for sharing the parameters has been received. The fourth method described above is a method in which the parameters are shared between the communication device and the external device using NFC (Near Field Communication) tags. The fifth method is a method by which the parameters are shared between the communication device and the external device using Bluetooth or Bluetooth Low Energy. A communication device according to any one of items 1 to 8, characterized by the above. (Item 10) The parameters shared between the communication device and the external device include at least one of the following: encryption method, encryption key, authentication method, AKM (Authentication and Key Management), BSSID, MAC address, and passphrase. A communication device according to any one of items 1 to 9, characterized by the features described herein. (Item 11) The aforementioned wireless communication is a communication that conforms to the Wi-Fi Direct standard. In the aforementioned connection process, the parameter sharing process is performed before the process of determining which of the communication device and the external device will be the master device. A communication device according to any one of items 1 to 10, characterized by the features described herein. (Item 12) The aforementioned wireless communication is This is a communication method that conforms to the Wi-Fi Direct standard and is capable of communication using the 6GHz band. A communication device according to any one of items 1 to 11, characterized by the features described herein. (Item 13) The system further includes a printing means for recording an image onto a recording medium. A communication device according to any one of items 1 to 12, characterized by the features described herein. (Item 14) A method for controlling a communication device, A communication process that enables wireless communication between the communication device and an external device using a predetermined communication method without going through an external access point, The process includes receiving a request for wireless communication from the external device, The connection process for connecting the communication device and the external device for the purpose of wireless communication is as follows: This includes a parameter sharing process that shares the parameters used for the connection between the communication device and the external device, The control method described above is A storage control step that controls the storage means to store first information indicating that the external device is a device that can omit the parameter sharing process, The process includes, when the request is received from the external device, a process control step that controls the connection process to omit the parameter sharing process based on the fact that the first information is stored in the storage means, A method for controlling a communication device, characterized by the features described above. (Item 15) 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 13. (Item 16) 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 13.
[0159] 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]
[0160] 100 MFP: 101 AP: 103 DHCP Server: 104 Mobile Terminal Device: 212 CPU: 213 ROM: 214 RAM
Claims
1. A communication device, A communication means capable of performing wireless communication between the communication device and an external device using a predetermined communication method without going through an external access point, The system includes receiving means for receiving requests for wireless communication from the external device, The connection process for connecting the communication device and the external device for the purpose of wireless communication is as follows: This includes a parameter sharing process that shares the parameters used for the connection between the communication device and the external device, The aforementioned communication device is A storage control means controls the storage means to store first information indicating that the external device is a device that can omit the parameter sharing process, The system includes a processing control means that, upon receiving the request from the external device, controls the connection process to omit the parameter sharing process based on the fact that the first information is stored in the storage means, A communication device characterized by the following features.
2. The first piece of information mentioned above is, Previously, when a connection was established between the communication device and the external device through the connection process, a first screen was displayed on the display means that was capable of receiving a first operation to register the external device as a device for which the parameter sharing process could be omitted, and based on the acceptance of said first operation, the information is stored in the storage means. The communication device according to feature 1.
3. The first screen is, This screen is displayed only to users who have administrator privileges for the aforementioned communication device. The communication device according to feature 2.
4. The memory control means is If the first operation is not accepted by the first screen, the system controls the storage means to store second information indicating that the external device is a candidate for a device that can omit the parameter sharing process. The communication device according to feature 2.
5. The display control means further provides a second screen on the display means that can accept a second operation for registering a device that omits the parameter sharing process, based on the second information stored in the storage means, The memory control means is Based on the reception of the second operation via the second screen, the system controls the storage means to store the first information. The communication device according to feature 4.
6. The display control means is If the second information stored in the storage means indicates that a plurality of devices, including the external device, are candidates for devices that can omit the parameter sharing process, then the second screen displays an interface that can accept the second operation for each of the plurality of devices individually. The communication device according to feature 5.
7. The system further includes a transmission means for transmitting a response to the request to the external device when the request is received from the external device. The processing control means is Based on the fact that the first information is stored in the storage means, control is made to cause the transmission means to send a response to omit the parameter sharing process. The communication device according to feature 1.
8. The system further includes a transmission means for transmitting a response to the request to the external device when the request is received from the external device. The processing control means is Based on the fact that the first information is stored in the storage means, control is made to cause the transmission means to send a response that includes identification information of the communication device and information that permits access to information held by the external device. The communication device according to feature 1.
9. The parameter sharing process described above is: Between the communication device and the communication device, one of the following methods is performed: the first method, the second method, the third method, the fourth method, or the fifth method. The first method is a method in which the communication device displays a code image containing the parameter information, and the external device reads the code image, thereby sharing the parameter between the communication device and the external device. The second method is a method in which the parameters are shared between the communication device and the external device via wireless communication based on a predetermined operation being performed on the communication device, The third method is a method by which the parameters are shared between the communication device and the external device without any user operation being performed on the communication device and the external device after a request for sharing the parameters has been received. The fourth method is a method by which the parameters are shared between the communication device and the external device using NFC (Near Field Communication) tags. The fifth method is a method by which the parameters are shared between the communication device and the external device using Bluetooth or Bluetooth Low Energy. The communication device according to feature 1.
10. The parameters shared between the communication device and the external device include at least one of the following: encryption method, encryption key, authentication method, AKM (Authentication and Key Management), BSSID, MAC address, and passphrase. The communication device according to feature 1.
11. The aforementioned wireless communication is a communication that conforms to the Wi-Fi Direct standard. In the aforementioned connection process, the parameter sharing process is performed before the process of determining which of the communication device and the external device will be the master device. The communication device according to feature 1.
12. The aforementioned wireless communication is This is a communication method that conforms to the Wi-Fi Direct standard and is capable of communication using the 6GHz band. The communication device according to feature 1.
13. The system further includes a printing means for recording an image onto a recording medium. The communication device according to feature 1.
14. A method for controlling a communication device, A communication process that enables wireless communication between the communication device and an external device using a predetermined communication method without going through an external access point, The process includes receiving a request for wireless communication from the external device, The connection process for connecting the communication device and the external device for the purpose of wireless communication is as follows: This includes a parameter sharing process that shares the parameters used for the connection between the communication device and the external device, The control method described above is A storage control step that controls the storage means to store first information indicating that the external device is a device that can omit the parameter sharing process, The process includes, when the request is received from the external device, a process control step that controls the connection process to omit the parameter sharing process based on the fact that the first information is stored in the storage means, A method for controlling a communication device, characterized by the features described above.
15. 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 13.
16. 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 13.