Electronic apparatus, method for controlling the same, program, and storage medium
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- CANON KK
- Filing Date
- 2023-06-30
- Publication Date
- 2026-07-02
AI Technical Summary
Existing systems face issues when switching access points (APs) due to potential disruptions during data transfer, particularly during printing operations, leading to uneven printing or data loss.
An electronic device and method that controls access point switching based on specific conditions, such as the state of print data reception, to minimize disruptions during data transfer.
Prevents uneven printing and data loss by optimizing access point changes during data transfer, ensuring stable communication.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Technical field]
[0001] The present invention relates to an electronic device that can be connected via a wireless LAN, a control method thereof, a program, and a storage medium. [Background technology]
[0002] In an Extended Service Set (ESS) consisting of multiple Access Points (APs), there is a technology that dynamically switches the AP to which the STA (Station) connects in order to efficiently exchange data between the AP and the STA. When it is determined that the AP to which the STA should connect should be switched based on the congestion of the AP to which the STA is connected, the availability of other APs, the radio wave conditions, etc., the currently connected AP sends a request to the STA to change the connected AP. When the STA receives an AP change request, it can connect to the appropriate AP by switching the AP to which it connects in accordance with the request.
[0003] Patent Document 1 discloses the following process of requesting a connected wireless slave device to change its connection destination from a router having an AP function. A mobile router (MR1) that can connect to multiple wireless slave devices checks whether the wireless slave device terminal supports IEEE802.11v. It is possible to determine whether the wireless slave device terminal supports IEEE802.11v from an Association Request frame that the wireless slave device terminal transmits when wirelessly connecting to MR1. If the wireless slave device terminal supports IEEE802.11v, a BTM (BSS Transition Management) Request frame is transmitted to the corresponding wireless slave device terminal. The BSS Transition Candidate List Entries field of the BTM Request frame specifies the BSSID of the parent router RT2 as the connection destination. This prompts the wireless slave device terminal to switch its connection destination, and the wireless slave device terminal switches its connection destination from MR1 to RT2 in accordance with the received BTM Request frame. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] JP 2021-175068 A Summary of the Invention [Problem to be solved by the invention]
[0005] There are two states for a STA: one where no problem occurs when an AP is switched, and another where a problem occurs when the AP is switched or the STA is disconnected from the currently connected AP. When a problem occurs, if the STA receives an AP change request from an AP and switches the connected AP in response to the request, the problem occurs in the STA.
[0006] An object of the present invention is to provide an electronic device that more appropriately changes the access point to which the device is connected, a control method thereof, a program, and a storage medium. [Means for solving the problem]
[0007] The electronic device of the present invention is characterized in that it comprises a receiving means for receiving a request from a connected access point to change the access point to be connected to; a printing control means for controlling the device to receive and print print data from another device via the connected access point; and a control means for controlling the device to change the connection destination based on the change request in a first state in which the device is not in a state to receive the print data from the other device, and for controlling the device not to change the connection destination based on the change request in a second state in which the electronic device has received part of the print data from the other device but has not completed receiving the remainder. Effect of the Invention
[0008] According to the present invention, the access point to be connected can be changed more appropriately. [Brief description of the drawings]
[0009] [Figure 1] FIG. 1 is a diagram illustrating a system configuration. [Diagram 2]FIG. 1 is a diagram illustrating the configuration of an MFP. [Diagram 3] FIG. 2 is a diagram illustrating an operation display unit of the MFP. [Figure 4] FIG. 2 is a diagram illustrating a configuration of a mobile terminal device. [Diagram 5] FIG. 2 is a diagram illustrating a configuration of an access point. [Figure 6] 11 is a sequence diagram illustrating a process in response to a connection destination change request from an AP. [Figure 7] FIG. 1 is a diagram for explaining processing in an MFP. [Figure 8] FIG. 11 is a sequence diagram showing processing between devices. [Figure 9] FIG. 11 is a sequence diagram showing processing between devices. [Figure 10] FIG. 11 is a sequence diagram showing processing between devices. [Figure 11] FIG. 11 is a sequence diagram showing processing between devices. [Figure 12] FIG. 11 is a sequence diagram showing processing between devices. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] Hereinafter, the embodiments will be described in detail with reference to the attached drawings. Note that the following embodiments do not limit the invention according to the claims. Although the embodiments describe a number of features, not all of these features are essential to the invention, and the features may be combined in any manner. Furthermore, in the attached drawings, the same reference numbers are used for the same or similar configurations, and duplicated descriptions are omitted.
[0011] (System Configuration) FIG. 1 shows an example of the configuration of a system according to this embodiment. In one example, this system is a wireless communication system in which a plurality of communication devices can wirelessly communicate with each other. In the example of FIG. 1, the communication devices include a mobile terminal device 104, an MFP 100, access points AP101 and AP102, a server 103, and a network 110. Note that AP101 and AP102 may be illustrated as AP1 and AP2. The mobile terminal device 104 is a device having a wireless communication function using a wireless LAN or the like. Note that, hereinafter, the wireless LAN may be referred to as a 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, or the like.
[0012] 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. The MFP100 of this embodiment has a communication function capable of wirelessly communicating with a mobile terminal device 104. Although the MFP100 is used in this embodiment as an example, this is not limiting. 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, and the like, each having a communication function, may be used instead of the MFP100. Note that MFP is an acronym for Multi Function Peripheral.
[0013] The AP101 is provided separately (externally) from the mobile terminal device 104 and the MFP100, and operates as a base station device of the WLAN. A communication device having a communication function of the WLAN can communicate in infrastructure mode of the WLAN via the AP101. In the following, an access point may be referred to as an "AP." Also, infrastructure mode may be referred to as a "wireless infrastructure mode." The AP101 performs wireless communication with a communication device that has been authorized to connect to the own device (has been authenticated), and relays wireless communication between the communication device and other communication devices. Also, the AP101 may be connected to a wired communication network, for example, and relay communication between a communication device connected to the wired communication network and another communication device wirelessly connected to the AP101.
[0014] AP 102 has the same functions as AP 101, and MFP 100 switches connection from AP 101 to AP 102 as necessary. Server 103 connects to MFP 100 via AP 101 and network 110, and provides services to MFP 100 by responding to requests from MFP 100. Here, network 110 may be the so-called Internet, or it may be a closed network within a company or a mobile phone network.
[0015] (External configuration of MFP) FIG. 2A shows an example of the external configuration of the MFP 100. The MFP 100 has, for example, a document table 201, a document cover 202, a print paper insertion port 203, a print paper discharge port 204, and an operation display unit 205. The document table 201 is a table on which a document to be read is placed. The document cover 202 is a cover for holding the document placed on the document table 201 and preventing light from a light source that irradiates the document during reading from leaking to the outside. The print paper insertion port 203 is an insertion port that allows various sizes of paper to be set. The print paper discharge port 204 is a discharge port that discharges paper that has been printed. The paper set in the print paper insertion port 203 is transported one sheet at a time to the printing unit, and after printing is performed in the printing unit, it is discharged from the print paper discharge port 204. The operation display unit 205 includes keys such as character input keys, cursor keys, a decision key, and a cancel key, as well as an LED and an LCD, and is configured to be able to accept operations by the user to activate various functions as an MFP and to operate various settings. The operation display unit 205 may also be configured to include a touch panel display. The MFP 100 has a wireless communication function using WLAN, and includes a wireless communication antenna 206 for the wireless communication, although it does not necessarily need to be visible from the outside. Like the mobile terminal device 104, the MFP 100 can also perform wireless communication using WLAN in frequency bands of 2.4 GHz and 5 GHz.
[0016] (MFP configuration) 2B shows an example of the configuration of the MFP 100. The MFP 100 includes a main board 211 that performs main control of the device itself, and a wireless unit 226 that is one communication module that performs WLAN communication using at least one common antenna. The MFP 100 also includes, for example, a modem 229 for performing wired communication. The main board 211 includes, for example, a CPU 212 (central processing unit), a ROM 213, a RAM 214, a non-volatile memory 215, an image memory 216, a read control unit 217, a data conversion unit 218, a reading unit 219, and an encoding / decoding processing unit 221. The main board 211 also includes, for example, a printing unit 222, a paper feed unit 223, a print control unit 224, and an operation display unit 220. These functional units in the main board 211 are connected to each other via a system bus 230 managed by the CPU 212. Furthermore, the main board 211 and the wireless unit 226 are connected via, for example, a dedicated bus 225 , and the main board 211 and the modem 229 are connected via, for example, a bus 228 .
[0017] 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 for each process may be prepared. The ROM 213 stores a control program and an embedded OS program executed by the CPU 212. In this embodiment, the CPU 212 executes each control program stored in the ROM 213 under the management of an embedded OS also stored in the ROM 213, thereby performing software control such as scheduling and task switching.
[0018] The RAM 214 is composed of an SRAM or the like. The RAM 214 stores data such as program control variables, settings registered by a user, and management data of the MFP 100. The RAM 214 can also be used as a buffer for various types of work. The non-volatile memory 215 is composed of a memory such as a flash memory, and continues to store data even when the power of the MFP 100 is turned off. The image memory 216 is composed of a memory such as a DRAM. The image memory 216 accumulates image data received via the wireless unit 226, image data processed by the encoding / decoding processing unit 221, and the like. Note that the memory configuration of the MFP 100 is not limited to the above configuration. The data conversion unit 218 analyzes data of various formats, converts image data into print data, and the like.
[0019] 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 signals) and outputs the same. At this time, the reading control unit 217 may output the image data after performing various image processes such as binarization and halftoning.
[0020] The operation display unit 220 is the operation display unit 205 described with reference to FIG. 2(a), and performs display on a display based on display control by the CPU 212, generation of a signal in response to reception of a user operation, and the like.
[0021] The encoding / decoding processor 221 performs encoding and decoding processes on image data (JPEG, PNG, etc.) handled by the MFP 100, as well as enlargement / reduction processes.
[0022] 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 in order to hold multiple types of paper in one device, and under the control of the print control unit 224, it can control which paper feed unit to use to feed paper.
[0023] The print control unit 224 performs various image processing such as smoothing, print density correction, and color correction on the image data to be printed, and outputs the processed image data to the print unit 222. The print unit 222 is configured to be able to execute a print process of an inkjet recording method, for example, and ejects ink supplied from an ink tank from a print head to record an image on a recording medium such as paper. Note that the print unit 222 may be configured to execute other print processes such as an electrophotographic method. The print control unit 224 may also periodically read out information from the print unit 222 and update status information stored in the RAM 214, including the remaining amount of ink in the ink tank and the state of the print head.
[0024] The wireless unit 226 is a unit capable of providing a communication function of WLAN, and can provide the same function as that of a combination of the WLAN unit 429 of the mobile terminal device 104, for example. 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 the original data and outputs them to the CPU 212. The wireless unit 226 can communicate as a station conforming to the IEEE802.11 standard series. In particular, it can communicate as a station conforming to IEEE802.11a / b / g / n / ac / ax. Hereinafter, the station may be referred to as an STA. It can also communicate as an STA compatible with Wi-Fi Agile Multiband (trademark).
[0025] The wireless unit 226 supports IEEE802.11ax, i.e., Wi-Fi6 (trademark), and the MFP100 can also operate as an STA supporting at least one of OFDMA (Orthogonal Frequency-Division Multiple Access) and TWT (Target Wake Time). Supporting TWT adjusts the timing of data communication from the master to the STA. The wireless unit 226 (MFP100) that is an STA transitions its communication function to a sleep state when it is not necessary to wait for signal reception. This can reduce power consumption. The wireless unit 226 also supports Wi-Fi 6E (trademark). That is, communication in the 6 GHz band (5.925 GHz to 7.125 GHz) is also possible. The band that is in the 5 GHz band and is subject to Dynamic Frequency Selection (DFS) does not exist in the 6 GHz band. Therefore, communication in the 6 GHz band does not experience communication interruptions due to DFS standby time, and more comfortable communication can be expected.
[0026] The mobile terminal device 104 and the MFP 100 are capable of P2P (WLAN) communication based on the WFD, and the wireless unit 226 has a software access point (soft AP) function or a group owner function. That is, the wireless unit 226 can build a network for P2P communication and determine a channel to be used for P2P communication.
[0027] (MFP operation display section) FIG. 3 shows an example of a screen display on a display (touch panel display) included in the operation display unit 220 of the MFP 100. FIG. 3(a) shows an example of a home screen displayed when the MFP 100 is powered on and an operation such as printing or scanning is not being performed (idle state, standby state). In FIG. 3(a), display items (menu items) corresponding to copy, scan, and cloud are displayed. Cloud is a menu item related to a cloud function using Internet communication. When any of the menu items is selected by key operation or touch panel operation, the MFP 100 can start executing the corresponding setting or function. The MFP 100 can seamlessly display a screen different from that shown in FIG. 3(a) by accepting key operation or touch panel operation on the home screen of FIG. 3(a).
[0028] Fig. 3(b) is a display example of another part of the home screen, which is a screen transitioned to by an operation (such as a sliding operation to the left or right) to display another page of the home screen from the state of Fig. 3(a). In Fig. 3(b), display items (menu items) corresponding to communication settings, print, and photo are displayed. When any of these menu items is selected, the function corresponding to the selected menu item, that is, the print function, photo function, or communication settings, is executed.
[0029] FIG. 3(c) is a display example of a communication setting menu screen that is displayed when communication setting is selected on the screen of FIG. 3(b). On the communication setting menu screen, "wireless LAN", "wired LAN", "wireless direct", "Bluetooth", and "common" are displayed as menu items (options). "Wireless LAN", "wired LAN", and "wireless direct" are menu items for performing LAN settings, and from these items, settings such as setting a wired connection, enabling / disabling a wireless infrastructure mode, and enabling / disabling a P2P mode such as WFD and soft AP mode can be performed. When the "wireless LAN" item is selected and wireless LAN is enabled by a user operation, wireless infrastructure mode is enabled. When the "wireless direct" item is selected and wireless direct is enabled by a user operation, P2P (WLAN) mode is enabled. In addition, on this screen, a common setting menu for each connection form is also displayed. Furthermore, the user can set the frequency band and frequency channel of wireless LAN from this screen.
[0030] (External configuration of mobile terminal device) FIG. 4(a) is a diagram showing an example of the external configuration of the mobile terminal device 104. In this embodiment, as an example, the mobile terminal device 104 is a smartphone of a general type. The mobile terminal device 104 includes, for example, a display unit 402, an operation unit 403, and a power key 404. The display unit 402 is, for example, a display including a display mechanism of an LCD (Liquid Crystal Display) type. The display unit 402 may display information using, for example, an LED (Light Emitting Diode) or the like. The mobile terminal device 104 may have a function of outputting information by voice in addition to or instead of the display unit 402. The operation unit 403 includes hard keys such as keys and buttons, a touch panel, and the like for detecting user operations. In this example, the display unit 402 displays information and the operation unit 403 accepts user operations using a common touch panel display, so that the display unit 402 and the operation unit 403 are realized by one device. In this case, for example, button icons and a software keyboard are displayed using the display function of the display unit 402, and the touch of the user on those points is detected by the operation reception function of the operation unit 403. Note that the display unit 402 and the operation unit 403 may be separated, and hardware for display and hardware for operation reception may be prepared separately. The power key 404 is a hardware key for receiving a user operation for turning the power of the mobile terminal device 104 on or off.
[0031] The mobile terminal device 104 includes a WLAN unit 401 that provides a communication function of a WLAN, although it is not necessarily visible from the outside. The WLAN unit 401 is configured to be able to execute data (packet) communication in a WLAN system that complies with, for example, the IEEE802.11 standard series (IEEE802.11a / b / g / n / ac / ax, etc.). In addition, it is 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 executing communication in a WLAN system that complies with other standards. In this example, it is assumed that the WLAN unit 401 is capable of communication in both the 2.4 GHz band and the 5 GHz band. It is also assumed that the WLAN unit 401 is capable of communication based on WFD, communication in a soft AP mode, communication in a wireless infrastructure mode, etc. Operations in these modes will be described later.
[0032] (Configuration of mobile terminal device) FIG. 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 board 411 that performs main control of the device itself, and a WLAN unit 429 that performs WLAN communication. The main board 411 includes, for example, a CPU 412, a ROM 413, a RAM 414, an image memory 415, a data conversion unit 416, a telephone unit 417, a GPS 419, a camera unit 421, a non-volatile memory 422, a data storage unit 423, a speaker unit 424, and a power supply unit 425. Here, CPU is an acronym for Central Processing Unit, ROM is an acronym for Read Only Memory, RAM is an acronym for Random Access Memory, and GPS is an acronym for Global Positioning System. The mobile terminal device 104 also includes a display unit 420 and an operation unit 418. These functional units in the main board 411 are connected to each other via a system bus 628 managed by the CPU 412. Furthermore, the main board 411 and the WLAN unit 429 are connected via, for example, a dedicated bus 426 .
[0033] 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 for each process may be prepared. The ROM 413 stores a control program executed by the CPU 412, an embedded operating system (OS) program, and the like. In this embodiment, the CPU 412 executes each control program stored in the ROM 413 under the management of an embedded OS also stored in the ROM 413, thereby performing software control such as scheduling and task switching.
[0034] The RAM 414 is configured by a static RAM (SRAM) or the like. The RAM 414 stores data such as program control variables, setting values registered by the user, and management data of the mobile terminal device 104. The RAM 414 can also be used as a buffer for various types of work. The image memory 415 is configured by a memory such as a dynamic RAM (DRAM). The 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. The non-volatile memory 422 is configured by a memory such as a flash memory, and continues to store data even when the power supply of 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, the image memory 415 and the RAM 414 may be shared, or data may be backed up using the data storage unit 423. In the present embodiment, a DRAM is given as an example of the image memory 415, but other storage media such as a hard disk or a non-volatile memory may also be used.
[0035] The data conversion unit 416 performs data conversion such as analysis of data in various formats, color conversion, image conversion, etc. The telephone unit 417 controls the telephone line and realizes telephone communication by processing audio data input and output via the speaker unit 424. 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.
[0036] The camera unit 421 has a function of electronically recording and encoding an image input through a lens. Image data obtained by imaging with the camera unit 421 is stored in the data storage unit 423. The speaker unit 424 performs control to realize a function of inputting or outputting voice for a telephone function and other functions such as alarm notification. The power supply unit 425 is, for example, a portable battery, and controls the power supply to the device. The power supply state includes, for example, a dead battery state in which the battery has no remaining charge, a power-off state in which the power key 404 is not pressed, a running state in which the device is normally running, and a power-saving state in which the device is running but is in power-saving mode.
[0037] The display unit 420 is the display unit 402 described with reference to Fig. 4(a), and performs various input operations and displays the operating status and status of the MFP 100 based on the control of the CPU 412. The operation unit 418 is the operation unit 403 described with reference to Fig. 4(a), and upon receiving a user operation, executes control such as generating an electrical signal corresponding to the operation and outputting the electrical signal to the CPU 412.
[0038] The mobile terminal device 104 performs wireless communication using the WLAN unit 429, and performs data communication with other devices such as the MFP 100. The WLAN unit 429 converts data into packets and transmits the packets to other devices. The WLAN unit 429 also restores packets from other external devices to their original data and outputs the data to the CPU 412. The WLAN unit 429 is a unit for realizing communication compliant with the WLAN standards. The WLAN unit 429 can operate in parallel in at least two communication modes including a wireless infrastructure mode and a P2P (WLAN) mode. The frequency bands used in these communication modes may be limited by the functions and performance of the hardware.
[0039] (Access point configuration) 5 is a block diagram showing the configuration of an AP 101 having a wireless LAN access point function. The AP 101 includes a main board 510 that controls the AP 101, a wireless LAN unit 516, a wired LAN unit 518, and an operation button 520.
[0040] A microprocessor-type CPU 511 arranged on a main board 510 operates according to a control program stored in a ROM-type program memory 513 connected via an internal bus 512 and the contents of a RAM-type data memory 514. The CPU 511 performs wireless LAN communication with other communication terminal devices by controlling a wireless LAN unit 516 via a wireless LAN communication control unit 515. The CPU 511 also performs wired LAN communication with other communication terminal devices by controlling a wired LAN unit 518 via a wired LAN communication control unit 517. The CPU 511 can accept operations from a user via an operation button 520 by controlling an operation unit control circuit 519. The CPU 511 includes at least one processor.
[0041] The AP 101 also includes an interference wave detection unit 521 and a channel change unit 522. The interference wave detection unit 521 performs processing to detect interference waves when wireless communication is being performed in a band where DFS (Dynamic Frequency Selection) is performed. If an interference wave is detected when wireless communication is being performed in a band where DFS is performed, the channel change unit 522 performs processing to change the channel to be used when it is necessary to immediately change to an available channel, etc.
[0042] The AP 102 has a similar configuration to the AP 101.
[0043] (P2P communication method) Next, we will outline a P2P (WLAN) communication method in which devices communicate directly with each other wirelessly without going through an external access point in WLAN communication. P2P (WLAN) communication can be realized using a number of methods, and for example, a communication device can support a number of modes for P2P (WLAN) communication and selectively use one of the multiple modes to execute P2P communication (WLAN).
[0044] The following two P2P modes are envisioned:
[0045] Soft AP mode Wi-Fi Direct (WFD) mode A communication device capable of P2P communication may be configured to support at least one of these modes, but a communication device capable of P2P communication does not necessarily have to support all of these modes and may be configured to support only some of them.
[0046] A communication device (e.g., the mobile terminal device 104) having a communication function based on WFD calls up a (possibly dedicated) application for implementing the communication function by accepting a user operation via the operation unit of the communication device. The communication device then displays a UI (user interface) screen provided by the application to prompt the user to operate the device, and can execute WFD communication based on the accepted user operation.
[0047] ●Soft AP mode In the soft AP mode, a communication device (e.g., the mobile terminal device 104) operates as a client that requests various services. The other communication device (e.g., the MFP 100) operates as a soft AP that can execute the functions of a WLAN AP by software settings. Note that commands and parameters transmitted and received when establishing a wireless connection between a client and a soft AP are not described here because those specified in the Wi-Fi (registered trademark) standard are sufficient. In addition, the MFP 100 operating in the soft AP mode determines a frequency band and a frequency channel as a parent station. Therefore, the MFP 100 can select which frequency band to use from 5 GHz and 2.4 GHz, and which frequency channel to use within that frequency band.
[0048] ●WFD mode The MFP 100 may be configured to start up as a fixed parent station in the WFD mode (Autonomous Group Owner). In this case, GO Negotiation processing for determining the role is not required. In addition, in this case, the MFP 100 determines the frequency band and frequency channel as the parent station. Therefore, the MFP 100 can select which frequency band to use from 5 GHz and 2.4 GHz, and which frequency channel to use within that frequency band.
[0049] (Wireless infrastructure mode) In the wireless infrastructure mode, communication devices (e.g., the mobile terminal device 104 and the MFP 100) that communicate with each other are connected to an external AP (e.g., the AP 101) that manages the network, and communication between the communication devices is performed via the AP. In other words, communication between the communication devices is performed via a network built by the external AP. When the mobile terminal device 104 and the MFP 100 each find the AP 101 and transmit a connection request to the AP 101 to connect, communication between these communication devices in the wireless infrastructure mode via the AP 101 is possible. Note that multiple communication devices may be connected to separate APs. In this case, data transfer is performed between the APs, and communication between the communication devices is possible. Commands and parameters transmitted and received during communication between the communication devices via an access point may be those specified in the Wi-Fi standard, and therefore description thereof will be omitted here. In this case, the AP 101 determines the frequency band and frequency channel. Therefore, the AP 101 can select which frequency band to use from 5 GHz, 2.4 GHz, and 6 GHz, and which frequency channel to use within that frequency band.
[0050] (Processing in response to a request from the AP to change the connection destination of the STA) The mobile terminal device 104 and the MFP 100 support a function disclosed as Wi-Fi Agile Multiband (trademark). Wi-Fi Agile Multiband is a function that enables the selection of an optimal environment according to the changing conditions of a Wi-Fi network. Specifically, STAs such as the mobile terminal device 104 and the MFP 100 and APs such as the AP 101 exchange information about the network environment using the IEEE802.11 series of communication standards. By such information exchange, when the network is congested, the AP can guide (change the connection destination) the STA to another AP, frequency band, channel, or even to another cellular service in some cases.
[0051] 6 is a sequence diagram when MFP 100 switches the AP of the connection destination from AP 101 to AP 102 in response to a connection destination change request from AP 101. In this sequence, the processes executed by each device are realized by the CPU of each device reading various programs stored in a memory such as a ROM of each device into a RAM and executing the programs.
[0052] 6, it is assumed that MFP 100 has established a connection in wireless infrastructure mode with AP 101. In addition, when MFP 100 and AP 101 connect in wireless infrastructure mode, AP 101 acquires information on whether MFP 100 supports IEEE802.11v, and performs the following processing if the information that MFP 100 supports IEEE802.11v has been acquired.
[0053] In S601, the AP 101 transmits to the MFP 100 an inquiry (measurement request) regarding the radio wave strength of APs around the MFP 100. This inquiry can be transmitted including, for example, a beacon frame request or a beacon report request. In other words, this request can use a mechanism defined in the IEEE 802.11k standard.
[0054] In S602, in response to the request received in S601, the MFP 100 receives frames transmitted from the surrounding APs and measures their radio field strength. This allows the radio field strength of each of the multiple APs, including AP 101 and AP 102, to be measured.
[0055] In S603, the MFP 100 transmits a list of the radio wave strengths of the APs around the MFP 100 measured in S602 as a response to the request received in S601. Note that the radio wave strength to be responded to may be information stored in the RAM 214 and non-volatile memory 215 of the MFP 100 in addition to or instead of the information measured in S602. This response is transmitted including, for example, a beacon report or measurement reports.
[0056] In S604, the AP 101 determines whether or not it is necessary to switch the connection destination of the MFP 100 based on the congestion status in the network that the AP 101 is aware of and the radio wave strength received in S603 from the MFP 100. Factors that the AP 101 uses to determine that a connection switch is necessary include a large number of connected STAs, a large amount of communication, other APs are less congested, the presence or absence of radio interference, and AP function stoppage. When it determines that a switch of the connection destination of the MFP 100 is necessary and determines the SSID, channel, and frequency band of another AP to be specified as the switching destination of the MFP 100, the process proceeds to S605.
[0057] In S605, the AP 101 transmits an AP change request (connection destination switch request) to the MFP 100. The connection destination change request includes information on the SSID, channel, and frequency band of another AP designated as a switch destination to the MFP 100, as determined in S604. Note that multiple SSIDs may be designated. The connection destination change request is transmitted, for example, as a BTM Request. In other words, a BTM (BSS Transition Management) Request frame defined in the IEEE802.11v standard is transmitted. In the example of FIG. 6, it is assumed that the AP 102 is designated as the switch destination included in the connection destination change request.
[0058] In S606, if the MFP 100 complies with the connection destination change request received in S605, the MFP 100 transmits a response indicating switch approval to the AP 101. If the MFP 100 does not comply with the connection destination change request, the MFP 100 may transmit a switch refusal as a response. The response is transmitted as a BTM Response. In the example of FIG. 6, the response indicating switch approval is transmitted.
[0059] In S607, the AP 101 and the MFP 100 disconnect the connection in the wireless infrastructure mode.
[0060] In S608, the MFP 100 transmits a connection request to the AP 102 so as to connect to the AP 102 specified in the connection destination change request received in S605.
[0061] As a result, in S609, a connection between the MFP 100 and the AP 102 is established in the wireless infrastructure mode.
[0062] With this mechanism, the MFP100, which is an STA, can change the connection destination from the AP101 to the AP102 based on a connection destination change request from the AP101 to which it was originally connected. The AP101 and the AP102 may be APs installed at different locations. That is, the MFP100 can switch to another AP installed at a location different from the AP to which it was originally connected by the process of FIG. 6. Also, the APs may correspond to different frequency bands among a plurality of frequency bands (any two or three of 2.4 GHz, 5 GHz, and 6 GHz) provided by the same device. That is, the MFP100 can switch to another frequency band provided by the same device as the AP to which it was originally connected by the process of FIG. 6. For example, the connection destination can be changed to an AP in the 6 GHz band based on a connection destination change request.
[0063] In this embodiment, an example will be described in which a measurement request and a connection destination change request are transmitted from an AP in a mechanism conforming to Wi-Fi Agile Multiband, and the STA responds to the request, but the present invention is not limited to this. This embodiment can also be applied to a case in which the STA responds to a measurement request or a connection destination change request transmitted from an AP using a mechanism different from the above-mentioned example, or changes the connection destination AP (switching, deleting, or adding the AP to be connected).
[0064] [First embodiment] There are two states for a STA: one where no problems occur when an AP is switched, and another where problems occur when the AP is switched or the STA is disconnected from the currently connected AP. When a problem occurs, the STA will experience problems if it receives an AP change request from the AP and switches the connected AP in response to the request. Also, if the AP change request is not responded to in order to avoid problems, the STA may be disconnected from the currently connected AP, which also causes problems for the STA.
[0065] For example, when a BTM Request from an AP prompts a wireless slave terminal to switch the connection destination while a STA is printing (hereinafter sometimes referred to as a print job), the STA may interrupt reception of print data, causing uneven printing or other problems on the printed matter. According to this embodiment, when a BTM Request from an AP prompts a wireless slave terminal to switch the connection destination while a STA is printing, it is possible to prevent uneven printing or other problems caused by the STA interrupting reception of print data.
[0066] 7B is a flow diagram of a process for responding to a request to switch the connection destination AP while the MFP 100 is executing printing. In this flow, the processes executed by each device are realized by the CPU 212 of the MFP 100 reading various programs stored in a computer-readable memory such as the ROM 213 in the MFP 100 into the RAM 214 and executing the programs.
[0067] 7B, it is assumed that the MFP 100 has established a connection with the AP 101 in wireless infrastructure mode. When the MFP 100 and the AP 101 connect in wireless infrastructure mode, the AP 101 acquires information on whether the MFP 100 supports IEEE802.11v. If the information indicating that the MFP 100 supports IEEE802.11v has been acquired, the following processing is performed.
[0068] In S701, the CPU 212 determines whether or not an inquiry (measurement request) about the radio wave strength of APs around the MFP 100 has been received from the AP 101. This inquiry can include a beacon frame request or a beacon report request, and in this embodiment, it is assumed to include either of these requests. The inquiry about radio wave strength that is confirmed to be received in S701 corresponds to the inquiry sent by the AP 101 in S601 in Fig. 6. If it is determined in S701 that the inquiry has been received, the process proceeds to S702, and if it is determined that the inquiry has not been received, the process proceeds to S703.
[0069] In S702, as described in S602 and S603 in FIG. 6, the CPU 212 measures the radio wave strength of the APs around the MFP 100, and transmits a list of the radio wave strengths of the APs to the AP 101 as a Beaon report.
[0070] In S703, the CPU 212 judges whether or not a connection destination AP switching request transmitted by the AP 101 in S605 of Fig. 6 has been received. If it is judged that the request has been received, the process proceeds to S705, and if it is judged that the request has not been received, the process proceeds to S704. In S704, the CPU 212 judges whether or not the connection with the connected AP 101 has been terminated, and if it is judged that the connection has not been terminated, the process proceeds to S701, and if it is judged that the connection has been terminated, the process of Fig. 7(b) is terminated.
[0071] In S705, the CPU 212 determines whether or not the MFP 100 is receiving print data. If it is determined that the MFP 100 is receiving print data, the process proceeds to S706, and if it is determined that the MFP 100 is not receiving print data, the process proceeds to S707.
[0072] In S706, the CPU 212 returns a switch refusal in response to the switch request from the AP 101, and the process proceeds to S704. Note that in S706, the CPU 212 may not return a response to the change request from the AP 101.
[0073] Here, the operation will be described with reference to FIG. 7(a). FIG. 7(a) shows a flow of a series of print processing over time in the MFP 100, in which the MFP 100 receives a print start request, receives print data and starts printing, operates the recording head to execute printing, and ends printing. The reception of the print start request corresponds to, for example, the timing of starting execution of a print job in the MFP 100. A period 722 in FIG. 7(a) is a period during which the MFP 100 receives print data and starts printing, and operates the recording head to execute printing (outputs a printed matter). If the MFP 100 is in the state of the period 722, it is determined in S705 that the print data is being received. During the reception of the print data, a part of the print data of the image to be printed has been received from the mobile terminal device 104, which is the counterpart device, and reception of the remaining part of the print data has not been completed. The MFP100 does not store all of the print data to be printed on one sheet of paper. Instead, when it receives a portion of the print data, it prints only that portion (for example, it receives and prints one line), and when it receives the rest of the data, it prints that portion again, and so on.
[0074] In S707, CPU 212 determines whether MFP 100 has received a print start request. Specifically, for example, CPU 212 may store a flag indicating that a print start request has been received in a predetermined storage area of non-volatile memory, and perform the determination in S707 based on the presence or absence of the flag. If it is determined that a print start request has been received, the process proceeds to S708, and if it is determined that a print start request has not been received, the process proceeds to S709.
[0075] 7A, in which MFP 100 has received setting information and the like by executing a print job but has not yet received print data and started printing, it is determined in S707 that a print start request has been received. In S708, CPU 212 delays (puts on hold) the reception of the print data. Specifically, for example, CPU 212 temporarily stops the process just before the reception of the print data, and stores a flag indicating that the delay has been completed and the data received by the print job in a predetermined storage area of the non-volatile memory. After S708, the process proceeds to S709.
[0076] In S709, the CPU 212 returns an acknowledgement of switching the destination AP to the AP 101, and the process proceeds to S710. S710 corresponds to 606 in Fig. 6. In S710, the CPU 212 disconnects the connection with the AP 101 in the wireless infrastructure mode, and the process proceeds to S711. S710 corresponds to S607 in Fig. 6. In S711, the CPU 212 starts a connection to the recommended AP 102 in accordance with the switching request from the destination AP, and the process proceeds to S712.
[0077] In S712, the CPU 212 judges whether or not the connection with the AP 102 has been completed. S712 is repeated until it is judged that the connection with the AP 102 has been completed, and if it is judged that the connection with the AP 102 has been completed, the process proceeds to S713. In S713, the CPU 212 judges whether or not a flag indicating that the delay has been performed is stored in a predetermined storage area of the non-volatile memory. If it is judged that a flag indicating that the delay has been performed is stored, the process proceeds to S714, and if it is judged that a flag indicating that the delay has been performed is not stored, the process proceeds to S704.
[0078] When the MFP 100 is in the state of period 721 in Fig. 7A, a flag indicating that the data has been delayed is stored in a predetermined storage area of the non-volatile memory in S708. In this case, in S714, the CPU 212 starts receiving the print data that was delayed (held). When the reception of the print data starts, the MFP 100 goes into the state of period 722 in Fig. 7A. After the connection with AP 102 is thus completed, the reception of the print data starts. Therefore, the communication state is more stable than when the MFP 100 was connected to the AP 101 that was the source of the switch, and printing can be achieved in a more stable communication state. After S714, the process proceeds to S704.
[0079] In addition, when the CPU 212 completes receiving the print data, it may erase the flag indicating that the print has been delayed, which is stored in a predetermined storage area of the nonvolatile memory. In addition, when a print start request is received, it may store a flag indicating that the print start request has been received in a predetermined storage area of the nonvolatile memory. Then, when the print data reception is started, it may erase the flag indicating that the print start request has been received, which is stored in a predetermined storage area of the nonvolatile memory. With such a configuration, if a connection destination switching request is received during the period 723 in FIG. 7A when the reception of the print data is completed, the process proceeds from No in S705 to No in S707, and in S709, an acknowledgement of the connection switching is returned to the AP 101. In this case, No is determined in S713. In addition, the period 723 includes a state in which the reception of the print data is completed and the recording head is operating (outputting a printed matter).
[0080] Hereinafter, the processing sequence of the MFP 100 in this embodiment will be described in detail with reference to FIGS.
[0081] FIG. 8 is a diagram showing an example of a sequence in which, in this embodiment, while the MFP 100 is executing printing, the MFP 100 rejects switching from the AP 101 to the AP 102 in response to a request from the AP 101 to switch the connection destination AP. The terminal device 801 corresponds to the terminal device 104 in FIG. 1. A user operates an application installed in the terminal device 801 to transmit a print command or print data to the MFP 100 via a network to which the AP 101 belongs. The data control unit 802 is a print data control unit in the MFP 100, and receives print commands and print data, and controls execution of a print job. The print execution unit 804 is a print execution unit in the MFP 100, and executes printing, such as controlling an engine required for conveying a recording medium and controlling a print head required for ejecting ink, according to an instruction from the data control unit 802. The paper feed unit 223 and the print unit 222 are included in the print execution unit 804.
[0082] 6, so the description of S601, S602, S603, S604, and S605 will be omitted. That is, these are steps in which the MFP100 switches the destination AP from AP101 to AP102 in response to a request from AP101 to switch the destination AP based on the Wi-Fi Agile Multiband specifications that are the premise.
[0083] In this example, S805 is performed after S604. In S805, the data control unit 802 receives a print start request from the terminal device 801. This corresponds to receiving the print start request in FIG. 7(a). In S807, the data control unit 802 transmits a print start request to the print execution unit 804. In S808, the data control unit 802 returns a print start response to the terminal device 801. In S809, the data control unit 802 begins receiving print data from the terminal device 801. In S811, the data control unit 802 transmits a print start request to the print execution unit 804.
[0084] In this example, the MFP 100 receives a request to switch from AP 101 to AP 102 in S605. The MFP 100 determines in S812 how to respond to the received switching request. In S812, the data control unit 802 determines whether to return an acknowledgment or a refusal in response to the switching request. The data control unit 802 determines in S706 to return a refusal because print data is being received according to the flowchart in Fig. 7B, and in S817 the MFP 100 responds to the AP 101 with a refusal to switch.
[0085] Thereafter, when the MFP 100 has completed receiving the print data, in S814 the data control unit 802 returns a print data reception completion response to the terminal device 801. Thereafter, in S815 the print execution unit 804 returns a print completion notification at the timing of completion of the print operation to the data control unit 802. In S816, the data control unit 802 returns a print completion response to the terminal device 801 and ends the print job.
[0086] In this way, while receiving print data, MFP 100 rejects a switching request from AP 101. This makes it possible to prevent printing irregularities and the like caused by the print data being printed being interrupted by switching of the connection.
[0087] FIG. 9 is a diagram showing an example of a sequence in which, while the MFP 100 is executing printing, the MFP 100 switches the connection destination AP from the AP 101 to the AP 102 in response to a request from the AP 101 to switch the connection destination AP.
[0088] 6, so the description of S601, S602, S603, S604, S605, S606, S607, S608, and S609 will be omitted. That is, these are steps in which the MFP100 switches the destination AP from AP101 to AP102 in response to a request from AP101 to switch the destination AP based on the Wi-Fi Agile Multiband specifications that are the premise.
[0089] 8, so their explanation will be omitted. In S805, the terminal device 801 transmits a print start request to the data control unit 802. In S807, the data control unit 802 transmits a print start request to the print execution unit 804. In S808, the data control unit 802 returns a print start response to the terminal device 801.
[0090] In this example, S605 is performed after S808. In S605, the AP 101 transmits a switching request to switch to the AP 102 to the MFP 100. The MFP 100 performs a response determination for the received switching request in S912. In S912, the data control unit 802 determines whether to return an acknowledgment or a refusal in response to the switching request. The data control unit 802 determines to return an acknowledgment in S709 because print data is not being received according to the flowchart in FIG. 7B.
[0091] In S606, the MFP 100 transmits a response indicating consent to switch to the AP 1101 in order to comply with the connection destination AP switching request received in S605 (first process). The response is transmitted as a BTM Response. In S607, the connection between the AP 101 and the MFP 100 in the wireless infrastructure mode is disconnected. In S608, the data control unit 802 transmits a connection request to the AP 102 to connect to the AP 102 specified in the connection destination AP switching request received in S605. As a result, in S609, a connection between the MFP 100 and the AP 102 in the wireless infrastructure mode is established.
[0092] When transmitting a connection request to the AP 102 in S608, the data control unit 802 may request the AP 102 to allocate the IP address currently allocated to the MFP 100 to the MFP 100. That is, the data control unit 802 requests the AP 102 to allocate the IP address that was allocated to the MFP 100 by the AP 101 to the MFP 100 by the DHCP function (second processing). This allows the terminal device 801 to access the MFP 100 with the same IP address before and after the MFP 100 switches the connection destination AP. Alternatively, the data control unit 802 may request the terminal device 801 via the AP 101 to perform a process of identifying the IP address of the MFP 100 after the connection destination is changed based on at least one of the domain name and model-specific information (model name, model number, serial number, etc.) of the MFP 100 before disconnecting the connection with the AP 101 in S607 (third processing). This allows the terminal device 801 to access the MFP 100 before and after the MFP 100 switches the connection destination AP. That is, when the MFP 100 changes the connection destination based on a change request, the MFP 100 controls to execute at least one of the following three processes (it may execute a plurality of processes):
[0093] A first process of transmitting a response to the connection request acknowledging the connection via the access point to which the connection was currently being made before the change of connection destination.
[0094] The second process is to request the IP address used when connected to the currently connected access point even after changing the access point to which the connection is made.
[0095] A third process of requesting the terminal of the other device via the currently connected access point to perform a process of identifying the IP address of the MFP 100 after the connection destination has been changed, based on the domain name and device-specific information of the MFP 100.
[0096] In S809, the data control unit 802 receives print data from the terminal device 801. In this example, the print data is received via the AP 102 with which a connection has been established. In S811, the data control unit 802 transmits a print start request to the print execution unit 804. In S814, the data control unit 802 returns a data reception completion response to the AP 101 when the data control unit 802 has finished receiving the print data. Thereafter, in S815, the print execution unit 804 returns a print completion to the data control unit 802 when the print operation is completed. In S816, the data control unit 802 returns a print completion response to the terminal device 801 and ends the print job.
[0097] In this way, the connection is switched before the MFP 100 starts receiving print data. This reduces the possibility that the received print data will be interrupted due to contention with the connection switching process. As a result, it is possible to prevent uneven printing caused by the print data being printed intermittently.
[0098] 10 is a diagram showing an example of a sequence in which, in this embodiment, while MFP 100 is executing printing, MFP 100 switches the connection destination AP from AP 101 to AP 102 in response to a connection destination switching request from AP 101. The difference from FIG. 9 is that, whereas the switching request from AP 101 in S605 occurs before reception of print data, in this example, the switching request in S605 occurs after reception of the print data has been completed.
[0099] 6, so the description of S601, S602, S603, S604, S605, S606, S607, S608, and S609 will be omitted. That is, these are steps in which the MFP100 switches the connection destination AP from AP101 to AP102 in response to a connection destination switching request from AP101 based on the Wi-Fi Agile Multiband specifications that are the premise.
[0100] 8, so their explanation will be omitted. In S805, the terminal device 801 transmits a print start request to the data control unit 802. In S807, the data control unit 802 transmits a print start request to the print execution unit 804. In S808, the data control unit 802 returns a print start response to the terminal device 801.
[0101] In S809, the data control unit 802 receives print data from the terminal device 801. In S811, the data control unit 802 transmits a print start request to the print execution unit 804. In S814, the data control unit 802 returns a data reception completion response to the terminal device 801. Thereafter, in S815, the print execution unit 804 returns a print completion notification to the data control unit 802 at the timing of completion of the print operation. In S816, the data control unit 802 returns a print completion response to the terminal device 801 and ends the print job.
[0102] In this example, thereafter, in S605, the AP 101 transmits a switching request to the AP 102 to the MFP 100. The data control unit 802 performs a response determination in S1012 for the received switching request. In S1012, the data control unit 802 determines whether to return an acknowledgement or a rejection in response to the switching request. The data control unit 802 determines to return an acknowledgement in S709 because print data is not being received according to the flowchart of FIG. 7B. In S606, the data control unit 802 transmits a response indicating an acknowledgement of the switching to the AP 101 in order to comply with the switching request of the connection destination AP received in S605. The response is transmitted as a BTM Response. In S607, the connection between the AP 101 and the MFP 100 in the wireless infrastructure mode is disconnected. In S608, the data control unit 802 transmits a connection request to the AP 102 to connect to the AP 102 specified in the switching request of the connection destination AP received in S605. As a result, in S609, a connection between the MFP 100 and the AP 102 is established in the wireless infrastructure mode.
[0103] In this way, the MFP 100 switches the connection after completing reception of the print data. This reduces the possibility that the received print data will be interrupted due to contention with the connection switching process. As a result, it is possible to prevent uneven printing caused by the print data being printed intermittently.
[0104] [Second embodiment] The following describes the differences from the first embodiment. In this embodiment, in addition to the determination as in the first embodiment of whether print data is being received, a determination of the response to a request to switch the destination AP is made using a combination of a refusal list and a safe list.
[0105] The refusal list is a list of conditions for refusing to switch the destination AP and not switching the destination AP. The refusal list of this embodiment holds, for example, a list of conditions such as the operating status of the printer, whether or not a specific print job is being executed, etc. The safe list is a list of conditions for always switching the destination AP. The safe list of this embodiment holds, for example, a list of conditions such as the operating status of the printer, the type of job being received, the type of media used in printing, the type of ink used in printing, etc.
[0106] Below are specific examples (conditions) of the deny list and safe list.
[0107] [Examples of conditions prescribed in the Deny List] Condition: Immediately after the MFP100 is started, the process for connecting to the AP and an operation other than that connection process may conflict with each other.
[0108] Examples of cases that satisfy such conditions include a case where AP 101 requests to switch the connected AP while MFP 100 is running, without waiting for the time until MFP 100 becomes idle, and a case where the occupancy rate of CPU 212 is increased to a certain level by other processes related to the startup.Other examples include a case where the usage rate of RAM 214, non-volatile memory 215, etc. is increased to a certain level by other processes related to the startup.To realize a safe switching implementation in terms of the system, MFP 100 denies the switching of the connected AP when this condition is satisfied.
[0109] Condition: MFP100 is starting the shutdown process.
[0110] Since the MFP 100 is stopped and connection is not possible after the stop processing, switching of the connection destination AP cannot be executed. Therefore, when this condition is satisfied, the MFP 100 rejects switching of the connection destination AP.
[0111] Condition: After MFP100 receives a specific job (print start request), it checks the ID and type of the print job and finds that they match the specified ID and type.
[0112] When this condition is met, the MFP 100 always refuses to switch the connection destination AP. In the first embodiment, the MFP 100 refused to switch the connection destination AP when print data was being received. In this embodiment, by defining such a condition, it is possible to refuse to switch the connection destination AP when a request to execute a specific print job, for example, when a request to start printing is received, is used as a trigger.
[0113] Conditions other than those mentioned above may be specified in the refusal list. For example, a condition may be that the communication speed is not expected to improve after switching the connection destination AP.
[0114] [Examples of conditions prescribed for safe lists] Condition: A printing error has occurred.
[0115] If this condition is met, the MFP 100 accepts the switching of the connection destination AP even if it has received only part of the print data and has not yet completed receiving the remaining part. The reception of the print data is interrupted due to the occurrence of an error. Therefore, when switching the connection destination AP, the problem of the print data being interrupted does not occur in the first place, and the connection destination AP can be switched.
[0116] Condition: The print job has been canceled.
[0117] If this condition is met, the MFP 100 accepts the switching of the connection destination AP even if some of the print data has been received and the remaining data has not been received. If the print cancellation operation has been performed, the reception of the remaining data itself becomes unnecessary. Therefore, when switching the connection destination AP, the problem of the print data being interrupted does not occur in the first place, and the connection destination AP can be switched.
[0118] Condition: The type of print media is the specified type.
[0119] If this condition is met, the MFP100 will accept switching of the connected AP even if it has received only part of the print data and has not yet completed receiving the remaining data. Depending on the type of print media, there are cases where a slight interruption in the reception of print data does not pose a problem in terms of image formation quality. For example, this applies to cases where image quality is important for glossy paper, photo paper, and photo paper, while a certain degree of interruption in print data is acceptable for plain paper / postcards.
[0120] Condition: The ink type is the specified type.
[0121] If this condition is met, the MFP 100 will accept the switching of the connection destination AP. Depending on the type of recording material, such as ink, there may be cases where a slight interruption in the reception of print data does not affect the quality of the image formation. For example, this applies to cases where a certain degree of interruption in print data is acceptable for quick-drying ink.
[0122] Conditions: For media and ink other than those mentioned above, there are settings such as color or monochrome, whether to print text, and whether to use high-quality print mode.
[0123] If this condition is met, the MFP 100 approves the switching of the connection destination AP. For example, this applies to cases where the quality of monochrome image formation does not need to be as high as that of color. In such cases, the MFP 100 adds the AP to the safe list on the condition that monochrome printing is being performed. Also, for example, the MFP 100 adds the AP to the safe list on the condition that text printing is being performed and that the high-quality print mode is not being used.
[0124] Conditions other than those mentioned above may be specified in the safe list. For example, a condition may be that the communication speed is expected to improve after switching the connection destination AP.
[0125] The process of using the refusal list and the safe list in combination in this embodiment will be described with reference to FIG.
[0126] If it is determined in S705 that print data is not being received, CPU 212 determines whether or not the state of MFP 100 satisfies the conditions defined in the rejection list. If it is determined that the conditions of the rejection list are not met, the process proceeds to S707. If it is determined that the conditions of the rejection list are met, CPU 212 determines whether or not the state of MFP 100 satisfies the conditions defined in the safe list. If it is determined that the conditions of the safe list are met, the process proceeds to S707, and if it is determined that the conditions of the safe list are not met, the process proceeds to S706.
[0127] In this manner, in this embodiment, if it is determined that print data is not being received, before returning switching acknowledgement, it is determined whether or not the state of MFP 100 corresponds to the conditions of the refusal list. Also, if it is determined that print data is being received, before returning switching refusal, it is determined whether or not the state of MFP 100 corresponds to the conditions of the safe list.
[0128] In the above-mentioned refusal list or safe list determination, if the respective conditions are met, a reply to switch the connection may be sent by referring to a flag value dynamically set within MFP 100.
[0129] [Third embodiment] The third embodiment will be described below with respect to the differences from the first and second embodiments. Fig. 11 is a diagram showing an example of a sequence in which, while the MFP 100 is executing printing in this embodiment, the MFP 100 switches the connection destination AP from AP 101 to AP 102 in response to a request from AP 101 to switch the connection destination AP.
[0130] 6, so the description of S601, S602, S603, S604, S605, S606, S607, S608, and S609 will be omitted. That is, these are steps in which the MFP100 switches the AP to which it is connected from AP101 to AP102 in response to a request to switch the connection destination from AP101 based on the Wi-Fi Agile Multiband specifications that are the premise.
[0131] 8, so their explanation will be omitted. In S805, the terminal device 801 transmits a print start request to the data control unit 802. In S807, the data control unit 802 transmits a print start request to the print execution unit 804.
[0132] Here, in S605, the AP 101 transmits a switching request to the AP 102 to the MFP 100. The data control unit 802 performs a response determination for the received switching request in S1112. In S1112, the data control unit 802 determines whether to return an acknowledgment or a refusal in response to the switching request. Since the data control unit 802 is not currently receiving print data according to the flowchart in FIG. 7B, it determines to return an acknowledgment in S709.
[0133] In this example, it is assumed that the MFP 100 receives the switching request in S605 and the print start request in S805 at approximately the same timing. Therefore, the MFP 100 performs control to shift the timing of each request so that the reception of print data is not interrupted and so that data reception and connection switching are not performed simultaneously. In order to shift the timing, the data control unit 802 determines to delay and transmit a response to the print start request after the connection destination AP is switched. Specifically, after receiving the print start request in S805, the print start response is not returned until the MFP 100 connects to the AP 102 in S609.
[0134] In S606, the data control unit 802 transmits a response indicating consent to switching to the AP 101 in order to comply with the destination AP switching request received in S605. The response is transmitted as a BTM Response. In S607, the AP 101 and the MFP 100 disconnect from each other in the wireless infrastructure mode. In S608, the data control unit 802 transmits a connection request to the AP 102 to connect to the AP 102 specified in the destination AP switching request received in S605. As a result, in S609, a connection in the wireless infrastructure mode between the MFP 100 and the AP 102 is established.
[0135] After the connection between the MFP 100 and the AP 102 is established in the wireless infrastructure mode, the data control unit 802 returns a print start response to the terminal device 801 in S1108.
[0136] In S809, the data control unit 802 receives print data from the terminal device 801. In S811, the data control unit 802 transmits a print start request to the print execution unit 804. In S814, the data control unit 802 returns a data reception completion response to the terminal device 801. Thereafter, in S815, the print execution unit 804 returns a print completion to the data control unit 802 at the timing of completion of the print operation. In S816, the data control unit 802 returns a print completion response to the terminal device 801 and ends printing.
[0137] In this way, the MFP 100 switches the connection AP before receiving print data, so the print data it receives is not interrupted. This makes it possible to prevent printing irregularities and other issues caused by the print data being printed being interrupted by switching the connection AP.
[0138] 12 is a diagram showing an example of a sequence for switching the connection destination AP in response to a request to switch the connection destination AP while the MFP 100 is performing pattern printing in the maintenance function. Here, pattern printing refers to printing that test prints a fixed pattern to check the quality of the print head and ink ejection.
[0139] Maintenance execution unit 1204 is an execution unit of the maintenance function in MFP 100, and executes cleaning of the print head, etc., or executes printing of pattern data stored in MFP 100. In this embodiment, maintenance execution unit 1204 executes pattern printing, but the pattern data for pattern printing is not acquired by data communication from an external device, but is stored in a storage medium within MFP 100, such as a hard disk or nonvolatile memory.
[0140] 6, so the description of S601, S602, S603, S604, S605, S606, S607, S608, and S609 will be omitted. That is, these are steps in which the MFP100 switches the AP to which it is connected from AP101 to AP102 in response to a request to switch the connection destination from AP101 based on the Wi-Fi Agile Multiband specifications that are the premise.
[0141] In S1205, the data control unit 802 starts maintenance printing. The trigger for starting maintenance printing is, for example, automatic execution due to regular maintenance, or a user operation of the MFP 100. In S1207, the data control unit 802 transmits a maintenance printing start request to the maintenance printing execution unit 1204.
[0142] Here, in S605, AP 101 transmits a switching request to AP 102 to MFP 100. In S1212, data control unit 802 performs a response determination for the received switching request. In S1212, data control unit 802 determines whether to return an acknowledgment or a refusal in response to the switching request. In this example, MFP 100 is performing maintenance printing at this time. Since maintenance printing does not require external acquisition of print data via data communication, it is always determined that switching is acknowledged for any switching request for the connected AP received during that time.
[0143] In S606, the data control unit 802 transmits a response indicating consent to switch to the AP 101 in order to comply with the connection destination AP switching request received in S605. The response is transmitted as a BTM Response. In S607, the connection between the AP 101 and the MFP 100 in the wireless infrastructure mode is disconnected. In S608, the data control unit 802 transmits a connection request to the AP 102 to connect to the AP 102 specified in the connection destination AP switching request received in S605. As a result, in S609, a connection between the MFP 100 and the AP 102 in the wireless infrastructure mode is established. Thereafter, in S1215, the maintenance printing execution unit 1204 transmits a notification of completion of the maintenance printing to the data control unit 802.
[0144] In this way, when performing maintenance printing such as cleaning (maintenance of the print head), data within the MFP 100 body is used, and data communication with an external terminal is not involved. Therefore, in response to a request from the AP 101 to switch the connection destination AP, the connection destination AP switching request is always acknowledged.
[0145] In the above-described embodiments, a case has been described in which a request to switch the connection destination AP is rejected while print data is being received. However, a switch refusal may be returned in response to a request to switch the connection destination AP received not only while print data is being received, but also while a job is being executed. Note that while a job is being executed refers to, for example, the period from receiving a print start request or sending a print start response to sending a print completion response.
[0146] In addition, in each of the above-mentioned embodiments, the case where the MFP 100 is applied has been described as an example, but the present invention is not limited to such a configuration example, and can be applied to any wireless device that functions as an STA capable of processing in response to a request to switch the connection destination AP. In addition, printing in each of the embodiments can be executed not only from a personal computer, but also from devices such as a PDA, a tablet terminal, a smartphone, and a smart watch, which are mobile terminal devices. In addition, printing in each of the embodiments can be not only printing via a device, but also printing of any data on a network by cloud printing or the like.
[0147] The various controls described above as being performed by MFP100 may be performed by a single piece of hardware, or the entire device may be controlled by multiple pieces of hardware (e.g., multiple processors or circuits) sharing the processing.
[0148] In addition, although the present invention has been described in detail based on the preferred embodiments, the present invention is not limited to these specific embodiments, and various forms within the scope of the gist of the present invention are also included in the present invention. Furthermore, each of the above-mentioned embodiments merely shows one embodiment of the present invention, and each embodiment can be appropriately combined.
[0149] In addition, in each of the above-mentioned embodiments, the case where the present invention is applied to the MFP 100 has been described as an example, but the present invention is not limited to this example and can be applied to any wireless device that has multiple operation modes and functions as an STA capable of processing in response to a request to change the connection destination from an AP. That is, the present invention can be applied to various measuring devices (sensor devices) such as personal computers, PDAs, tablet terminals, mobile phone terminals such as smartphones, music players, game consoles, electronic book readers, smart watches, thermometers, and hygrometers. The present invention can also be applied to digital cameras (including still cameras, video cameras, network cameras, and security cameras), printers, scanners, and drones. The present invention can also be applied to video output devices, audio output devices (e.g., smart speakers), media streaming players, and wireless LAN adapters (adapters) that can be connected to USB terminals or LAN cable terminals. The video output device includes a device that, for example, acquires (downloads) a video on the Internet specified by a URL instructed from an electronic device and outputs it to a display device connected via a video output terminal such as HDMI (registered trademark), thereby realizing streaming playback on the display device or realizing mirroring display (display in which the content displayed on the electronic device is also displayed on the display device). Furthermore, the video output device includes media players such as televisions, hard disk recorders, Blu-ray recorders, and DVD recorders, head-mounted displays, projectors, televisions, display devices (monitors), signage devices, etc. Furthermore, the present invention is also applicable to Wi-Fi-connectable devices known as smart home appliances, such as air conditioners, refrigerators, washing machines, vacuum cleaners, ovens, microwave ovens, lighting equipment, heating equipment, and cooling equipment.
[0150] The present invention can also be realized by a process in which a program for implementing one or more of the functions of the above-described embodiments is supplied to a system or device via a network or a storage medium, and one or more processors in a computer of the system or device read and execute the program. The present invention can also be realized by a circuit (e.g., ASIC) that implements one or more of the functions.
[0151] The disclosure of the present embodiment includes the following electronic device, its control method, program, and storage medium. (Item 1) A receiving means for receiving a request from a currently connected access point to change the access point to be connected to; a print control means for controlling the reception and printing of print data from another device via the currently connected access point; In a first state in which the printing data is not received from the other device, control is performed to change the connection destination based on the change request; a control means for controlling not to change the connection destination based on the change request in a second state in which a part of the print data has been received from the other device and the remaining part has not been received; An electronic device comprising: (Item 2) the print control means receives a print start request before starting to receive the print data; The first state includes a state in which reception of the print data has not started and the print start request has been received. 2. The electronic device according to item 1, (Item 3) 3. The electronic device according to item 1 or 2, wherein the first state includes a state in which reception of the print data has been completed and a printed matter is being output. (Item 4) 2. The electronic device according to item 1, wherein the control unit controls so as not to change the connection destination based on the change request if a job corresponding to the print data is being executed. (Item 5) 5. The electronic device according to any one of items 1 to 4, wherein the first state includes a state in which printing is being performed based on second print data that does not require reception from the other device. (Item 6) 6. The electronic device according to item 5, wherein the printing based on the second print data is maintenance printing. (Item 7) 7. The electronic device according to any one of items 1 to 6, wherein the print data is received from the other device via wireless communication. (Item 8) The electronic device described in any one of items 1 to 7, characterized in that the control means controls the electronic device to change the connection destination based on the change request when the conditions for changing the connection destination are satisfied even in the second state. (Item 9) 9. The electronic device according to item 8, wherein the specific condition includes an error occurring during execution of a job based on the print data. (Item 10) 10. The electronic device according to item 8 or 9, wherein the specific condition includes that a job based on the print data has been canceled. (Item 11) 11. The electronic device according to any one of items 8 to 10, wherein the specific condition includes a predetermined setting being performed in printing based on the print data. (Item 12) 12. The electronic device according to item 11, wherein the predetermined setting is a predetermined type being set for at least one of the recording medium and the recording material. (Item 13) The electronic device according to any one of items 1 to 12, characterized in that the electronic device is capable of operating in accordance with at least one of OFDMA (Orthogonal Frequency-Division Multiple Access) and TWT (Target Wake Time). (Item 14) The electronic device according to any one of items 1 to 13, characterized in that the electronic device is capable of operating in accordance with IEEE 802.11ax. (Item 15) The electronic device described in any one of items 1 to 14, characterized in that when the control means controls to change the connection destination based on the change request, the control means controls to change to an access point with a frequency band of 6 GHz. (Item 16) When changing the connection destination based on the change request, the control means a first process of transmitting a response to the connection request via the currently connected access point to which the connection destination was previously changed; a second process of requesting the IP address used when connected to the currently connected access point even after the access point to which the connection is to be changed; a third process of requesting the other device via the currently connected access point to perform a process of identifying an IP address of the electronic device after the change of connection destination based on a domain name and device specific information of the electronic device; 16. The electronic device according to any one of items 1 to 15, characterized in that the electronic device is controlled to execute at least one of the above. (Item 17) A method for controlling an electronic device executed in an electronic device, comprising: a receiving step of receiving a request to change the access point to be connected from a currently connected access point; a print control step of receiving print data from another device via the currently connected access point and controlling the data to be printed; In a first state in which the printing data is not received from the other device, control is performed to change the connection destination based on the change request; a control step of controlling not to change the connection destination based on the change request in a second state in which a part of the print data has been received from the other device and the remaining part has not been received; 13. A method for controlling an electronic device comprising: (Item 18) A program for causing a computer to function as each of the means of the electronic device according to any one of items 1 to 16. (Item 19) Item 18. A computer-readable storage medium having the program according to item 17 stored therein.
[0152] The invention is not limited to the above-described embodiments, and various modifications and variations are possible without departing from the spirit and scope of the invention. Accordingly, the following claims are appended to apprise the public of the scope of the invention. [Explanation of symbols]
[0153] 100 MFP: 101 AP1: 102 AP2: 103 Server: 104 Mobile terminal device: 212 CPU: 213 ROM: 214 RAM
Claims
1. A receiving means for receiving a request from a currently connected access point to change the destination access point, A print control means that controls the device to receive and print print data from another device via the connected access point, In the first state, when the device is not receiving the print data from the other device, control is performed to change the connection destination based on the change request. In a second state where a portion of the print data has been received from the aforementioned other device, but the remaining reception is not yet complete, a control means controls the system to prevent the change of the connection destination based on the change request. An electronic device characterized by having the following features.
2. The print control means receives a print start request before it starts receiving the print data. The first state includes a state in which the reception of the print data has not started, and the print start request has been received. The electronic device according to feature 1.
3. The electronic device according to claim 1, characterized in that the first state includes a state in which the reception of the print data has been completed and the printed material is being output.
4. The electronic device according to claim 1, characterized in that the control means controls the connection destination not to be changed based on the change request if a job corresponding to the print data is currently being executed.
5. The electronic device according to claim 1, characterized in that the first state includes the execution of printing based on second print data that does not require reception from the other device.
6. The electronic device according to claim 5, characterized in that the printing based on the second print data is maintenance printing.
7. The electronic device according to claim 1, characterized in that the print data is received from the other device via wireless communication.
8. The electronic device according to claim 1, characterized in that the control means controls the connection destination to be changed based on the change request when specific conditions for changing the connection destination are met, even when the second state is in place.
9. The electronic device according to claim 8, characterized in that the aforementioned specific conditions include an error occurring during the execution of a job based on the print data.
10. The electronic device according to claim 8, characterized in that the aforementioned specific condition includes the cancellation of a job based on the print data.
11. The electronic device according to claim 8, characterized in that the aforementioned specific conditions include that a predetermined setting is made in printing based on the print data.
12. The electronic device according to claim 11, characterized in that the predetermined setting is that a predetermined type is set for at least one of the recording medium and the recording material.
13. The electronic device according to claim 1, characterized in that it is a device capable of operating in accordance with at least one of OFDMA (Orthogonal Frequency-Division Multiple Access) or TWT (Target Wake Time).
14. The electronic device according to claim 1, characterized in that the electronic device is capable of operating in accordance with IEEE 802.11ax.
15. The electronic device according to claim 1, characterized in that when the control means controls to change the connection destination based on the change request, it controls to change to an access point in the 6 GHz frequency band.
16. When the control means changes the connection destination based on the change request, A first process that sends a response acknowledging the change request via the access point to which the connection destination is currently made, before the change of the connection destination is made. A second process that requests the IP address used when connected to the aforementioned access point, even after the destination access point has been changed. A third process, via the connected access point, requests the other device to perform a process to identify the IP address of the electronic device after the connection destination change, based on the domain name and device-specific information of the electronic device. The electronic device according to claim 1, characterized in that it controls to perform at least one of the following.
17. The electronic device according to claim 1, characterized in that the change request is a request transmitted from a wireless LAN access point connected in infrastructure mode.
18. The electronic device according to claim 1, characterized in that the change request is a BTM (BSS Transition Management) Request as defined in the IEEE 802.11v standard.
19. A method for controlling electronic equipment that is performed in an electronic device, A receiving process that receives a request from the currently connected access point to change the destination access point, A print control process that controls the device to receive print data from another device via the connected access point and print it, In the first state, when the device is not receiving the print data from the other device, control is performed to change the connection destination based on the change request. A control step that controls the system so as not to change the connection destination based on the change request when a portion of the print data has been received from the other device and the remaining data has not yet been received, A method for controlling electronic equipment, characterized by having the following features.
20. A program for causing a computer to function as one of the means of the electronic device according to any one of claims 1 to 18.
21. A computer-readable storage medium on which the program described in claim 20 is stored.