Electronic device, control method thereof, program, and storage medium
The electronic device addresses access point switching issues by interrupting and canceling standby states for incomplete data transfer, ensuring uninterrupted process completion during connection changes.
Patent Information
- Application Number
- JP2023107822
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2023-06-30
- Publication Date
- 2025-08-12
- Estimated Expiration
- 2043-06-30
AI Technical Summary
Switching access points during data transmission or reception can cause disruptions, leading to incomplete processes and inability to receive remaining data, especially in scenarios like printing, where a change in IP address results in other devices being unable to send the remaining data, causing the process to stall.
The electronic device includes a mechanism to handle connection changes by interrupting and canceling the standby state for incomplete data transmission or reception when a connection destination change is requested, ensuring continuous process completion.
Prevents processes from being unable to continue promptly when changing access points during communication, allowing for seamless data transfer and process completion.
Smart Images

Figure 0007721597000001 
Figure 0007721597000002 
Figure 0007721597000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to an electronic device that can change an access point (AP) to which it is connected based on a connection destination change request from the AP, 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 connects should be switched based on factors such as the congestion of the AP to which the STA is connected, the availability of other APs, and the radio wave conditions, the currently connected AP sends a request to the STA to change its connection AP. When the STA receives an AP change request, it can connect to the appropriate AP by switching its connection AP in accordance with the request.
[0003] Patent Document 1 discloses the following process for a router with AP functionality to request a connected wireless slave device to change its connection destination: A mobile router (MR1) connectable to multiple wireless slave devices checks whether the wireless slave device terminal supports IEEE802.11v. Whether the wireless slave device terminal supports IEEE802.11v can be determined from an Association Request frame transmitted by the wireless slave device 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 master router RT2 as the connection destination. This prompts the 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] Patent Publication No. 2021-175068 Summary of the Invention [Problem to be solved by the invention]
[0005] There are two situations where a STA will not experience any problems when it switches its AP connection, and there are also situations where problems occur when it switches its AP connection or is disconnected from its current AP. That is, a STA may experience problems when it receives a request to change its AP connection from its current AP and switches its AP in response to the request. Also, if it does not respond to a request to change its AP connection received from a disconnected AP, it may be disconnected from its current AP, which may also cause problems for the STA.
[0006] Problems can occur, for example, when a STA receives print data from another device, such as a smartphone or PC, via the AP to which it is connected and is currently printing it. In this case, if the STA receives a request to change the connected AP and switches the connected AP in response to the request, the STA's IP address may change. As a result, other devices will no longer be able to find the STA with the new IP address, and will be unable to send the rest of the print data from the other device. As a result, the STA will be unable to receive the unreceived portion of the print data being printed, and the print cannot be completed. In this case, the STA will enter a receive standby state in the middle of printing, waiting to receive the rest of the print data (the unreceived portion). However, the rest will not be sent, so the receive standby state will continue. During this period, other processes cannot be performed, and subsequent processes will not be able to be executed promptly, leaving the print job in the middle of printing. Switching the connected AP while sending or receiving data other than print data can also cause problems, such as being unable to send or receive the remaining portion and complete the process.
[0007] In view of the above-mentioned problems, the present invention aims to provide a mechanism that prevents other processes from being unable to be performed promptly when the AP to be connected to is changed in response to a request to change the connection destination during a specific process involving communication. [Means for solving the problem]
[0008] In order to solve the above problems, the electronic device of the present invention comprises: A receiving means for receiving a request to change the access point (AP) to be connected from the currently connected AP; a processing means for communicating with other devices via the connected AP and performing specific processing involving data transmission or reception; a control means for performing control so that, when a connection destination is changed in response to the change request in a first state in which a part of data for the specific process has been received or transmitted through communication with the other device and the reception or transmission of the remaining part has not been completed, the specific process is interrupted and the standby state for reception or transmission of the remaining part is cancelled; The present invention is characterized by having the following. [Effects of the Invention]
[0009] According to the present invention, when the AP to be connected is changed in response to a request to change the connection destination during a specific process involving communication, it is possible to prevent other processes from being unable to be performed promptly. [Brief explanation of the drawings]
[0010] [Figure 1] FIG. 1 illustrates an example of a system configuration. [Figure 2] FIG. 1 illustrates an example of the configuration of an MFP. [Figure 3] 10A and 10B are diagrams illustrating examples of displays on an operation display unit of an MFP. [Figure 4] FIG. 2 is a diagram illustrating a configuration of a mobile terminal device. [Figure 5] FIG. 2 is a diagram illustrating the configuration of an access point. [Figure 6] FIG. 10 is a sequence diagram illustrating a process in response to a connection destination change request from an AP. [Figure 7] 10 is a flowchart of a process in the MFP in response to a connection destination change request from an AP. [Figure 8] 10 is a flowchart of a connection destination change request in the MFP. DETAILED DESCRIPTION OF THE INVENTION
[0011] Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that the present embodiments are merely examples, and that specific examples of components, processing steps, display screens, etc. are not intended to limit the scope of the present invention unless otherwise specified.
[0012] (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 communicate with each other wirelessly. In the example of FIG. 1, the communication devices include a mobile terminal device 104, an MFP 100, access points AP1 (101) and AP2 (102), a DHCP server 103, a DNS server 105, and a network 110. The mobile terminal device 104 is a device having a wireless communication function such as a wireless LAN. Note that, hereinafter, wireless LAN may be referred to as WLAN. The mobile terminal device 104 may be a personal digital assistant such as a PDA (Personal Digital Assistant), a mobile phone (smartphone), a digital camera, a personal computer, or the like.
[0013] The MFP 100 is a printing device having a printing function, and may also have a reading function (scanner), a fax function, and a telephone function. The MFP 100 of this embodiment has a communication function that enables wireless communication with a mobile terminal device 104. Although the present embodiment describes a case in which the MFP 100 is used as an example, the present invention is not limited to this. 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 MFP 100. Note that MFP is an acronym for Multi Function Peripheral.
[0014] The AP1 (101) is provided separately (externally) from the mobile terminal device 104 and the MFP 100, and operates as a WLAN base station device. A communication device having a WLAN communication function can communicate in WLAN infrastructure mode via the AP1 (101). Note that, hereinafter, an access point may be referred to as an "AP." Also, infrastructure mode may be referred to as a "wireless infrastructure mode." The AP1 (101) performs wireless communication with a communication device that has been authorized (authenticated) to connect to the AP1 (101), and relays wireless communication between the communication device and other communication devices. Also, the AP1 (101) may be connected to, for example, a wired communication network, and may relay communication between a communication device connected to the wired communication network and another communication device wirelessly connected to the AP1 (101).
[0015] AP2 (102) has the same functions as AP1 (101), and the MFP 100 switches its connection from AP1 (101) to AP2 (102) as necessary. The DHCP server 103 connects to the MFP 100 via AP1 (101) and the network 110 and provides services to the MFP 100 by responding to requests from the MFP 100. While the DHCP server 103 is connected as a separate device from AP1 (101) and AP2 (102) in FIG. 1, the AP1 (101) and AP2 (102) may have the DHCP server function. The DNS server 105 is connected to the MFP 100 and the mobile terminal device 104 via AP1 (101) and the network 110 and provides name resolution services by responding to requests from the MFP 100 and the mobile terminal device 104. The network 110 may be the Internet, a closed corporate network, or a mobile phone network.
[0016] (MFP external configuration) FIG. 2(a) shows an example of the external configuration of MFP 100. MFP 100 has, for example, a platen 201, a platen cover 202, a print paper insertion slot 203, a print paper ejection slot 204, and an operation display unit 205. Platen 201 is a stand on which a document to be read is placed. Platen cover 202 is a cover that holds down the document placed on platen 201 and prevents light from a light source that illuminates the document during reading from leaking to the outside. Print paper insertion slot 203 is an insertion slot that can accept paper of various sizes. Print paper ejection slot 204 is an ejection slot through which paper that has been printed is ejected. Paper that has been placed in print paper insertion slot 203 is transported one sheet at a time to the printing unit, where it is printed and then ejected from print paper ejection slot 204. The operation display unit 205 includes keys such as character input keys, cursor keys, a confirm key, and a cancel key, as well as an LED and an LCD, and is configured to be able to accept user operations for activating various MFP functions and for various settings. The operation display unit 205 may also include a touch panel display. The MFP 100 has a wireless communication function using WLAN, and includes a wireless communication antenna 206 for this wireless communication, although this does not necessarily need to be visible from the exterior. Like the mobile terminal device 104, the MFP 100 can also perform wireless communication using WLAN in the 2.4 GHz and 5 GHz frequency bands.
[0017] (MFP configuration) FIG. 2(b) shows an example configuration of MFP 100. MFP 100 includes a main board 211 that performs main control of the device itself and a wireless unit 226, which is a communication module that performs WLAN communication using at least one common antenna. MFP 100 also includes, for example, a modem 229 for performing wired communication. Main board 211 includes, for example, a CPU 212 (central processing unit), ROM 213, RAM 214, nonvolatile memory 215, image memory 216, read control unit 217, data conversion unit 218, reading unit 219, and encoding / decoding processing unit 221. 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 within main board 211 are connected to each other via a system bus 230 managed by CPU 212. 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 .
[0018] The CPU 212 is a system control unit including at least one processor, and controls the entire MFP 100. In one example, the processing of the MFP 100 described below is realized by the CPU 212 executing programs stored in the ROM 213. Note that dedicated hardware for each process may be provided. The ROM 213 stores control programs such as the control programs and embedded OS programs executed by the CPU 212. In this embodiment, the CPU 212 executes the control programs stored in the ROM 213 under the management of the embedded OS also stored in the ROM 213, thereby performing software control such as scheduling and task switching.
[0019] The RAM 214 is configured with an SRAM or the like. The RAM 214 stores data such as program control variables, setting values registered by the user, and management data for the MFP 100. The RAM 214 can also be used as a buffer for various types of work. The non-volatile memory 215 is configured with a memory such as a flash memory, and continues to store data even when the power to the MFP 100 is turned off. The image memory 216 is configured with 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 configuration described above. The data conversion unit 218 analyzes data in various formats and converts image data into print data, etc.
[0020] The reading control unit 217 controls the reading unit 219 (for example, a CIS (contact image sensor)) to optically read the document placed on the document table 201. The reading control unit 217 converts the image obtained by optically reading the document into electrical image data (image signals) and outputs the converted data. At this time, the reading control unit 217 may output the image data after performing various image processes such as binarization and halftoning.
[0021] 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.
[0022] The encoding / decoding processor 221 performs encoding and decoding processes on image data (JPEG, PNG, etc.) handled by the MFP 100, as well as scaling processes.
[0023] The paper feed unit 223 holds paper for printing. The paper feed unit 223 can supply the set paper under the control of the print control unit 224. The paper feed unit 223 may include multiple paper feed units 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.
[0024] 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 perform, for example, inkjet printing, 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 also be configured to be able to perform other printing processes such as electrophotography. The print control unit 224 may also periodically read information from the print unit 222 and update status information stored in RAM 214, including the remaining amount of ink in the ink tank and the state of the print head.
[0025] The wireless unit 226 is a unit capable of providing WLAN communication functions, and can provide functions similar to those of a combination of the WLAN unit 401 of the mobile terminal device 104, for example. That is, the wireless unit 226 converts data into packets in accordance with the WLAN standard and transmits the packets to other devices, and also restores packets from other external devices to the original data and outputs the data to the CPU 212. The wireless unit 226 is capable of communication as a station conforming to the IEEE802.11 standard series. In particular, it is capable of communication as a station conforming to IEEE802.11a / b / g / n / ac / ax. Hereinafter, the station may be referred to as an STA. It is also capable of communication as an STA compatible with Wi-Fi Agile Multiband (trademark).
[0026] The wireless unit 226 is compatible with IEEE802.11ax, i.e., Wi-Fi 6 (trademark), and can perform processing compliant with IEEE802.11ax. In other words, the MFP 100 can operate (process) as either an STA compatible with (compliant with) OFDMA or as an STA compatible with (compliant with) TWT, or both. OFDMA stands for Orthogonal Frequency-Division Multiple Access. TWT stands for Target Wake Time. Support for TWT adjusts the timing of data communication from the master device to the STA. The wireless unit 226 (MFP 100) as an STA transitions its communication function to a sleep state when it does not need to wait for signal reception. This reduces power consumption. The wireless unit 226 also supports Wi-Fi 6E (trademark). In other words, communication in the 6 GHz band (5.925 GHz to 7.125 GHz) is also possible. The bands where Dynamic Frequency Selection (DFS) is performed, which exist in the 5 GHz band, do not exist in the 6 GHz band. Therefore, when communicating in the 6GHz band, communication interruptions due to DFS waiting times will not occur, and more smooth communication can be expected.
[0027] The mobile terminal device 104 and the MFP 100 are capable of P2P (WLAN) communication based on 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 P2P communication network and determine the channel to be used for P2P communication.
[0028] (MFP operation display section) FIG. 3 schematically 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) is an example of a home screen that is displayed when the MFP 100 is powered on and no operations such as printing or scanning are being performed (idle state, standby state). FIG. 3(a) displays display items (menu items) corresponding to copy, scan, and cloud, respectively. Cloud is a menu item related to cloud functions that use Internet communication. By selecting any of the menu items through key operations or touch panel operations, the MFP 100 can begin executing the corresponding settings or functions. The MFP 100 can seamlessly display a screen different from that shown in FIG. 3(a) by accepting key operations or touch panel operations on the home screen of FIG. 3(a).
[0029] Figure 3(b) is a display example of another part of the home screen, which transitions from the state of Figure 3(a) by performing an operation (such as sliding left or right) to display another page of the home screen. Figure 3(b) displays display items (menu items) corresponding to communication settings, print, and photo. When one of these menu items is selected, the function corresponding to the selected menu item, i.e., the print function, photo function, or communication settings, is executed.
[0030] Figure 3(c) is an example of a communication settings menu screen that is displayed when communication settings are selected on the screen in Figure 3(b). The communication settings menu screen displays the following menu items (options): "Wireless LAN," "Wired LAN," "Wireless Direct," "Bluetooth," and "Common." "Wireless LAN," "Wired LAN," and "Wireless Direct" are menu items for configuring LAN settings. These items allow users to configure wired connections, enable / disable wireless infrastructure mode, and enable / disable P2P modes such as WFD and soft AP mode. When the "Wireless LAN" item is selected and wireless LAN is enabled by user operation, wireless infrastructure mode is enabled. When the "Wireless Direct" item is selected and wireless Direct is enabled by user operation, P2P (WLAN) mode is enabled. This screen also displays a common settings menu for each connection type. Furthermore, the user can use this screen to configure settings such as the wireless LAN frequency band and frequency channel.
[0031] (External configuration of mobile terminal device) FIG. 4(a) is a diagram illustrating 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 general-type smartphone. 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 liquid crystal display (LCD) type display mechanism. The display unit 402 may display information using, for example, an LED (light emitting diode). The mobile terminal device 104 may also have a function to output 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 receives user operations using a common touch panel display, so the display unit 402 and the operation unit 403 are implemented by a single device. In this case, for example, button icons and a software keyboard are displayed using the display function of display unit 402, and the touch of the user on those locations is detected by the operation reception function of operation unit 403. Note that display unit 402 and operation unit 403 may be separated, and hardware for display and hardware for operation reception may be provided separately. Power key 404 is a hardware key for receiving a user operation to turn on or off the power of mobile terminal device 104.
[0032] The mobile terminal device 104 includes a WLAN unit 401 that provides WLAN communication functionality, although it does not necessarily need to be visible from the exterior. The WLAN unit 401 is configured to be able to perform data (packet) communication in a WLAN system that complies with, for example, the IEEE 802.11 standard series (IEEE 802.11a / b / g / n / ac / ax, etc.). It is also capable of communication as an AP compatible with Wi-Fi Agile Multiband (trademark). However, this is not a limitation, and the WLAN unit 401 may also be capable of communication in a WLAN system that complies with other standards. In this example, the WLAN unit 401 is capable of communication in both the 2.4 GHz and 5 GHz frequency bands. It is also assumed that the WLAN unit 401 is capable of communication based on WFD, communication in soft AP mode, communication in wireless infrastructure mode, etc. Operation in these modes will be described later.
[0033] (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 includes 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 within 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 (the above-mentioned WLAN unit 401) are connected via a dedicated bus 426, for example.
[0034] The CPU 412 is a system control unit including at least one processor, and controls the entire mobile terminal device 104. In one example, the processing of the mobile terminal device 104 described below is realized by the CPU 412 executing a program stored in the ROM 413. Note that dedicated hardware for each process may be provided. The ROM 413 stores control programs, such as a control program and an embedded operating system (OS) program, executed by the CPU 412. 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.
[0035] The RAM 414 is configured with 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 for 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 with 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 nonvolatile memory 422 is configured with a memory such as a flash memory, and continues to store data even when the mobile terminal device 104 is powered 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 this embodiment, although a DRAM is given as an example of the image memory 415, other storage media such as a hard disk or nonvolatile memory may also be used.
[0036] The data conversion unit 416 analyzes data in various formats and performs data conversion such as color conversion and image conversion. The telephone unit 417 controls telephone lines and realizes telephone communication by processing audio data input and output via a 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.
[0037] The camera unit 421 has the function of electronically recording and encoding an image input through a lens. Image data obtained by capturing an image with the camera unit 421 is stored in a data storage unit 423. The speaker unit 424 controls the input and output of audio for telephone functions, as well as other functions such as alarm notification. The power supply unit 425 is, for example, a portable battery, and controls the supply of power to the device. Power supply states include, for example, a dead battery state in which there is no remaining battery power, 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.
[0038] 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, performs control such as generating an electrical signal corresponding to the operation and outputting it to the CPU 412.
[0039] The mobile terminal device 104 performs wireless communication using a WLAN unit 429 to perform 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 the 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. Note that the frequency bands used in these communication modes may be limited by the functionality and performance of the hardware.
[0040] (Access point configuration) 5 is a block diagram showing the configuration of AP1 (101) having a wireless LAN access point function. It includes a main board 510 that controls AP1 (101), a wireless LAN unit 516, a wired LAN unit 518, and an operation button 520.
[0041] A microprocessor-type CPU 511 disposed on a main board 510 operates in accordance with 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 controls a wireless LAN unit 516 via a wireless LAN communication control unit 515 to perform wireless LAN communication with other communication terminal devices. The CPU 511 also controls a wired LAN unit 518 via a wired LAN communication control unit 517 to perform wired LAN communication with other communication terminal devices. The CPU 511 controls an operation unit control circuit 519 to accept operations from a user via operation buttons 520. The CPU 511 includes at least one processor.
[0042] The AP1 (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 implemented. If an interference wave is detected when wireless communication is being performed in a band where DFS is implemented, 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.
[0043] The AP2 (102) has the same configuration as the AP1 (101).
[0044] (P2P communication method) Next, we will outline the P2P (WLAN) communication method, which allows devices to communicate directly with each other wirelessly without going through an external access point. P2P (WLAN) communication can be realized using multiple methods. For example, a communication device can support multiple modes for P2P (WLAN) communication and selectively use one of the multiple modes to perform P2P communication (WLAN).
[0045] The following two P2P modes are envisioned: 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 even a communication device capable of P2P communication does not 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 WFD communication function receives user operations via its operation unit, thereby invoking a (possibly dedicated) application for realizing the communication function. The communication device then displays a UI (user interface) screen provided by the application to prompt the user to perform an operation, and can execute WFD communication based on the received user operations.
[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 through software configuration. It is sufficient for the commands and parameters transmitted and received when establishing a wireless connection between the client and the soft AP to be those specified in the Wi-Fi (registered trademark) standard, and therefore a description thereof will be omitted here. Furthermore, the MFP 100 operating in the soft AP mode determines the frequency band and frequency channel as the master station. Therefore, the MFP 100 can select which frequency band to use, either 5 GHz or 2.4 GHz, and which frequency channel to use within that frequency band.
[0048] WFD mode The MFP 100 may be configured to be permanently activated as a master station in WFD mode (Autonomous Group Owner). In this case, GO negotiation processing to determine the role is not required. In addition, in this case, the MFP 100 determines the frequency band and frequency channel as the master station. Therefore, the MFP 100 can select which frequency band to use, 5 GHz or 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., AP1 (101)) that controls the network, and communication between the communication devices is performed via that AP. In other words, communication between the communication devices is performed via a network established by the external AP. The mobile terminal device 104 and the MFP 100 each discover AP1 (101) and send a connection request to and connect to AP1 (101), thereby enabling communication between these communication devices in the wireless infrastructure mode via AP1 (101). Note that multiple communication devices may be connected to different APs. In this case, data transfer between the APs enables communication between the communication devices. Commands and parameters transmitted and received during communication between each communication device via an access point may be those specified in the Wi-Fi standard, and therefore will not be described here. In this case, AP1 (101) determines the frequency band and frequency channel. Therefore, the AP1 (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 publicly known as Wi-Fi Agile Multiband (trademark). Wi-Fi Agile Multiband is a function that enables the selection of an optimal environment according to changing conditions in a Wi-Fi network. Specifically, STAs such as the mobile terminal device 104 and the MFP 100 and APs such as AP1 (101) exchange information about the network environment using the IEEE 802.11 series of communication standards. Through this information exchange, if the network is congested, the AP can guide (change the connection destination) the STA to another AP, frequency band, channel, or even another cellular service.
[0051] 6 is a sequence diagram in which the MFP 100 switches the AP of the connection destination from AP1 (101) to AP2 (102) in response to a request to change the connection destination from AP1 (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 the MFP 100 has established a connection with the AP1 (101) in wireless infrastructure mode. When the MFP 100 and the AP1 (101) connect in wireless infrastructure mode, the AP1 (101) acquires information on whether the MFP 100 supports IEEE802.11v. If the AP1 (101) has acquired information indicating that the MFP 100 supports IEEE802.11v, it will perform the following processing.
[0053] In S601, the AP1 (101) transmits to the MFP 100 an inquiry (measurement request) about the radio wave strength of APs around the MFP 100. This inquiry is transmitted as, 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, the MFP 100 receives frames transmitted by surrounding APs in response to the request received in S601 and measures the radio wave strength, thereby measuring the radio wave strength of each of the multiple APs, including AP1 (101) and AP2 (102).
[0055] In S603, the MFP 100 transmits a list of the radio wave intensities of the APs around the MFP 100 measured in S602 as a response to the request received in S601. Note that the radio wave intensity to be transmitted in response may be information stored in the RAM 214, non-volatile memory 215, etc. of the MFP 100 in addition to or instead of the information measured in S602. This response is transmitted as, for example, a beacon report or measurement reports.
[0056] In S604, the AP1 (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 AP1 (101) is aware of and the radio wave strength received in S603 from the MFP 100. Factors that the AP1 (101) uses to determine that a connection switch is necessary include a large number of connected STAs, a large amount of communication traffic, other APs that are less congested, the presence or absence of radio interference, and AP function outages. After determining that a switch of the connection destination of the MFP 100 is necessary and determining the SSID, channel, and frequency band of another AP to be designated as the switch destination of the MFP 100, the process proceeds to S605.
[0057] In S605, AP1 (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 to be designated as a switch destination for 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 AP2 (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, it transmits a response indicating acceptance of the switch to AP1 (101). If the MFP 100 does not comply with the connection destination change request, it may transmit a response indicating rejection of the switch. The response is transmitted as a BTM Response. In the example of FIG. 6, it is assumed that a response indicating acceptance is transmitted.
[0059] In S607, the AP1 (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 AP2 (102) to connect to the AP2 (102) specified in the connection destination change request received in S605.
[0061] As a result, in S609, a connection between the MFP 100 and AP2 (102) is established in the wireless infrastructure mode.
[0062] With this mechanism, the MFP100, which is an STA, can change its connection destination from AP1 (101) to AP2 (102) based on a connection destination change request from the originally connected AP1 (101). AP1 (101) and AP2 (102) may be APs installed in different locations. That is, by the processing of FIG. 6, the MFP100 can switch to another AP installed in a location different from the AP to which it was originally connected. Also, the APs may support different frequency bands among multiple frequency bands (any two or three of 2.4 GHz, 5 GHz, and 6 GHz) provided by the same device. That is, by the processing of FIG. 6, the MFP100 can switch to another frequency band provided by the same device as the originally connected AP. For example, based on a connection destination change request, the MFP100 can change its connection destination to an AP in the 6 GHz band.
[0063] In this embodiment, an example will be described in which an AP transmits a measurement request or a connection destination change request in a mechanism compliant with Wi-Fi Agile Multiband, and an 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 an STA responds to a measurement request or a connection destination change request transmitted from an AP using a mechanism different from the above example, or changes the connection destination AP (switches, deletes, or adds an AP to be connected to).
[0064] 7 shows a flowchart of the processing in response to a connection destination change request in MFP 100. This processing is realized by CPU 212 loading a program stored in ROM 213 into RAM 214 and executing it. When MFP 100 is powered on or the wireless communication function is turned on, the processing in FIG. 7 starts.
[0065] In S701, the CPU 212 initiates a connection with a preset AP (registered AP). The SSID and password of the preset AP are recorded in non-volatile memory, and this information is used to connect to the registered AP. In this embodiment, it is assumed that AP1 (101) is registered as the registered AP. Note that there are cases where connection to the registered AP fails, such as when radio waves from the registered AP cannot be received, but a description of such cases will be omitted. When a wireless connection (Wi-Fi connection) with the registered AP is established, the process proceeds to S702.
[0066] In S702, the CPU 212 determines whether the IP address setting of the MFP 100 is a static IP address setting. If the dynamic IP address setting is on and it is determined that the MFP 100 has a static IP address setting, the process proceeds to S704. If the dynamic IP address setting is not a static IP address setting, the process proceeds to S703. If the dynamic IP address setting using DHCP (Dynamic Host Configuration Protocol) is on (DHCP is enabled), the process determines that the static IP address setting is off and proceeds to S703. That is, S702 also determines whether the DHCP setting is enabled in the MFP 100. The dynamic IP address setting has a setting item name such as "automatic acquisition," and when automatic acquisition is set to on, the dynamic IP address setting is on. If the dynamic IP address setting is disabled (off, i.e., DHCP is disabled) and an IP address to be used as a static IP address is set, the process determines that the static IP address setting is on and proceeds to S704. In this embodiment, the protocol used for the dynamic IP address is DHCP, but this is not limited to this.
[0067] Here, a dynamic IP address is an IP address assigned by a DHCP server. When the DHCP setting is ON, the MFP100 obtains an IP address using DHCP. A static IP address is an IP address manually set by the MFP100 user. The MFP100 checks that a static IP address has been manually set and determines whether the static IP address setting is ON.
[0068] In S703, the CPU 212 controls the DHCP server 103 to request allocation of a dynamic IP address. That is, a DHCP Discover command is issued to request allocation of an IP address. The DHCP server 103 notifies the MFP 100 that it can assign any IP address by responding with a DHCP Offer. The MFP 100 issues a DHCP Request command to the DHCP server 103, specifying the IP address notified as available for assignment in the DHCP Offer, and requests allocation of an IP address. If the IP address specified by the MFP 100 can be assigned, the DHCP server 103 responds with a DHCP ACK, thereby determining the IP address (dynamic IP address) of the MFP 100.
[0069] In S704, the CPU 212 determines the IP address as a static IP address. That is, the CPU 212 determines the IP address that has been set by the user and stored in the ROM 213 as the IP address of the MFP 100.
[0070] In S705, the CPU 212 stores the dynamic IP address or static IP address assigned by the DHCP server 103 in the system memory 56.
[0071] As a result, a connection with the AP1 (101) is established in wireless infrastructure mode. When the MFP 100 and AP1 (101) connect in wireless infrastructure mode, the AP1 (101) acquires information on whether the MFP 100 supports IEEE802.11v. In this embodiment, the description will be given assuming that the MFP 100 supports IEEE802.11v.
[0072] In S706, the CPU 212 determines whether or not a measurement request (measurement request described above in S601 of FIG. 6) has been received from the AP1 (101). If a measurement request has been received, the process proceeds to S707; if not, the process proceeds to S708.
[0073] In S707, as described in S602 and S603 of FIG. 6, the CPU 212 measures the radio wave strength of the APs around the MFP 100 using the wireless unit 226, and transmits a list of the radio wave strengths of the APs to the AP1 (101) as a Beaon report.
[0074] In S708, the CPU 212 determines whether or not a connection destination change request (as described above in S605) has been received from the AP1 (101). If a change request has been received, the process proceeds to S709; if not, the process proceeds to S716.
[0075] In S709, the CPU 212 determines whether application-level communication, i.e., communication for executing print processing, is being performed with the mobile terminal device (104) connected to the MFP 100 via the currently connected AP1 (101). If communication for executing print processing is being performed, proceed to S712; otherwise, proceed to S710. Communication for executing print processing is in progress when part of the print data for the image to be printed has been received from the mobile terminal device (104), which is the other device, but reception of the remaining part of the print data has not been completed. The MFP 100 does not store all of the print data for one sheet of paper. Instead, when part of the print data is received, it prints only that part (for example, one line), and when the remaining data is received, it prints that part again, repeating this process. Even if printing is in progress, if printing is being performed for maintenance purposes that do not involve communication with the other device because print data stored in the MFP 100 is being used, S709 is determined to be No. Examples of printing for maintenance include the following: Automatic registration adjustment printing that prints and reads an adjustment pattern to correct vertical line distortion and color misalignment, and adjusts the print head position. Prints a nozzle check pattern to check for clogged nozzles Printing an adjustment pattern to set calibration adjustment values that correct color variations due to individual differences in the MFP100 and changes over time (printing for color calibration) Printing an adjustment pattern to fine-tune the paper feed amount (printing for band adjustment) In S710, the CPU 212 transmits a response to the AP1 (101) indicating that the connection destination will be changed based on the received connection destination change request (in accordance with the request). This corresponds to the process of S606 in FIG.
[0076] In S711, the CPU 212 disconnects from AP1 (101) and executes connection processing with the recommended connection AP included in the connection destination change request. That is, the connection destination AP is changed in accordance with the connection destination change request. More specifically, the processing described in S606 to S609 of FIG. 6 is performed. Furthermore, if the dynamic IP address setting is on (if the determination in S702 is No), the same processing as in S703 is performed to newly obtain a dynamic IP address and store it in the RAM 214 as the IP address of the MFP 100. That is, if the determination in S709 is No, a new dynamic IP address is obtained in accordance with the change in connection destination based on the connection destination change request, and the IP address is allowed to change.
[0077] In S712, the CPU 212 stores in the RAM 214 of the MFP 100 information on the recommended AP to be changed that is included in the received connection destination change request (information that identifies the recommended AP to be changed, including the BSSID).
[0078] In S713, the CPU 212 refers to the reason for change included in the received connection destination change request and determines whether the reason for change includes a strong reason. If there is a strong reason, the process proceeds to S715; if there is not, the process proceeds to S714. For example, if the Disassociation Imminent bit or the BSS Termination Included bit in the Request mode of the BTM Request is 1, the request is determined to have a strong reason.
[0079] In S714, the CPU 212 transmits a response to the AP1 (101) indicating that the change of the connection destination in response to the connection destination change request is rejected. This process corresponds to the transmission of the rejection response in S606 of FIG. 6. Since there is no strong reason for the change in S714, even if the change rejection response is transmitted, it is considered that there is a low possibility that the AP1 (101) that received the response will forcibly disconnect communication with the MFP 100. That is, for example, it is expected that the AP1 (101) will increase the priority of maintaining the connection of the MFP 100 by transmitting a connection destination change request to another STA other than the MFP 100 connected to the AP1 (101). In this way, when there is no strong reason for the change, the change rejection response is transmitted in the hope that the connection with the AP1 (101) can be maintained. Note that the MFP 100 may not return a response corresponding to the connection destination change request (i.e., ignore it) without transmitting a rejection response to the AP1 (101). In any case, when the process proceeds to S714, control is performed so that the connection destination is not changed in response to the connection destination change request.
[0080] In S715, the CPU 212 performs a connection destination change process to change the connection destination in response to the connection destination change request. The connection destination change process will be described later with reference to FIG.
[0081] In this embodiment, the determination in S713 is made, and the connection destination is changed in response to the connection destination change request only when a connection destination change request with a strong reason for change is received during processing involving communication (print processing), but this is not limited to this. After S712, the processing in S713 may be omitted, and the process may proceed to S715 to change the connection destination in response to the connection destination change request regardless of the strength of the reason for change.
[0082] In S716, the CPU 212 determines whether or not another event has occurred. If another event has occurred, the process proceeds to S717, and if not, the process proceeds to S718.
[0083] In S717, the CPU 212 executes processing in response to other events. For example, processing involving copying or cloud communication is performed by key operations or touch panel operations on the operation display unit 205. Furthermore, if an event occurs, such as a user operation to enable the dynamic IP address setting described above or a user operation to manually input a static IP address, the setting contents corresponding to the operation are recorded in the ROM 213. Furthermore, for example, if there is an operation event to register a registered AP (registering the SSID and password of the registered AP), registration processing corresponding to the operation is performed.
[0084] For example, if an operation event instructing copying occurs in S716, copying is performed by driving the reading unit 219 to read the original and printing the read image with the printing unit 222 in S717. Note that this process (new printing process) cannot be executed unless the process of S812 in Fig. 8, which will be described later, is executed. The process of S812 is a process for canceling the printing process of a print job that could not be printed to the end because the IP address has changed and it has become impossible to receive the rest of the print data that was in the middle of being printed.
[0085] In S718, CPU 212 determines whether the wireless connection with the currently connected AP has been terminated (disconnected). The termination of the wireless connection determined here occurs, for example, when an event occurs in which MFP 100 is powered off, when a setting is made to disable wireless, or when radio waves from the currently connected AP can no longer be received. Note that disconnection from the original connection destination that accompanies processing to change the connection destination in accordance with a connection destination change request is not subject to the determination in S718. If the wireless connection with the currently connected AP has not been terminated, the process returns to S706; if the wireless connection with the currently connected AP has been terminated, the process in FIG. 7 ends.
[0086] Fig. 8 shows a flowchart of the connection destination change process in S715 in Fig. 7. This process is realized by the CPU 212 loading a program stored in the ROM 213 into the RAM 214 and executing it.
[0087] In S801, CPU 212 sends a response indicating that the change based on the connection destination change request is accepted to the AP (e.g., AP1) that was currently connected before the connection destination change, and then disconnects the wireless connection with the currently connected AP (AP1).
[0088] In S802, CPU 212 wirelessly connects to the recommended AP (assuming it is AP2) using the information on the recommended AP recorded in S712, which was included in the connection destination change request received from the AP (AP1) currently connected before the connection destination change.
[0089] In S803, the CPU 212 determines whether the IP address setting of the MFP 100 is a static IP address setting. This determination is the same as that in S702 of Fig. 7. If the IP address setting is a static IP address setting, the process proceeds to S804, and if the IP address setting is not a static IP address setting (i.e., if the dynamic IP address setting is enabled), the process proceeds to S806.
[0090] In S804, the CPU 212 determines the IP address as a static IP address and proceeds to S810. This process is similar to the process in S704 of FIG.
[0091] In S806, the CPU 212 issues a DHCP Request command to the DHCP server 103, which is the source of the dynamic IP address, specifying the IP address previously used, to request assignment of an IP address. The IP address previously used is the IP address saved in S705 via S703, and is the IP address used when connecting to AP1 (101), which was connected before the connection destination was changed.
[0092] In S807, the CPU 212 determines whether or not the same IP address as the previously used IP address has been acquired from the DHCP server 103. If the previously used IP address has been acquired, the process proceeds to S810; otherwise, the process proceeds to S808.
[0093] In S808, the CPU 212 requests allocation of a dynamic IP address from the DHCP server 103. This process is similar to the process in S703 of FIG.
[0094] In S809, the CPU 212 receives the DHCP ACK sent as a response from the DHCP server 103 to the MFP 100, and acquires the IP address of the MFP 100 from the information contained therein.
[0095] In S810, the CPU 212 stores in the RAM 214 one of the static IP address determined in S804, the previous IP address acquired from the DHCP server 103, or the dynamic IP address newly assigned by the DHCP server 103 in S809.
[0096] In S811, the CPU 212 determines whether the IP address (IP address saved in S810) determined when connecting to the AP (AP2) after the change of connection destination has changed from the previous IP address used when connecting to the AP (AP1) before the change of connection destination. If the IP address has changed (i.e., the IP address saved in S810 is different from the previous IP address), the process proceeds to S812; if it has not changed (i.e., the IP address saved in S810 and the previous IP address are the same), the process proceeds to S813.
[0097] In S812, the CPU 212 cancels the standby state for communication with the mobile terminal device 104 and cancels (interrupts) the print processing that was being executed in conjunction with the communication with the mobile terminal device 104. In the case where the process proceeds to S812, the IP address has changed due to a change in the connection destination, and therefore the application layer communication with the mobile terminal device 104 that was communicating before the change in the connection destination cannot be continued. In other words, the mobile terminal device 104 cannot find the MFP 100 using the previous IP address. Therefore, communication is not possible, and the print processing that was being executed in conjunction with that communication cannot be continued. Therefore, the CPU 212 cancels the communication with the mobile terminal device 104 and executes the process to cancel the print processing that was being executed in conjunction with the communication with the mobile terminal device 104. This process includes the process of ejecting paper that was being printed. At this time, a screen indicating that the processing associated with the communication has been canceled may be displayed on the display of the operation / display unit 220 of the MFP 100.
[0098] In S813, the CPU 212 continues communication with the mobile terminal device 104, which is the other device, and continues executing the print process. In this case, the AP of the connection destination has changed based on the connection destination change request, but the IP address has not changed, so application layer communication with the mobile terminal device 104 can continue. In other words, the mobile terminal device 104 can communicate with the MFP 100 by specifying the previous IP address. Therefore, the print process involving communication continues to be executed, and the print data included in the print job is printed to the end.
[0099] In S814, the CPU 212 determines whether or not a connection destination change request transmitted from the currently connected AP (in this case, AP2) has been received. That is, the CPU 212 determines whether or not a further change of connection destination has been requested from AP2. If a connection destination change request has been received, the process proceeds to S709; otherwise, the process proceeds to S815.
[0100] In S815, the CPU 212 determines whether the print process that was continued in S813 and involved communication with the mobile terminal device 104 has ended (whether printing was completed). If it is determined that printing has ended, the process in Fig. 8 ends and the process proceeds to S716 in Fig. 7; otherwise, the process proceeds to S813.
[0101] 8, if the MFP 100 detects IP address duplication due to the use of a static IP address after changing the connection destination to AP2 (102), one of the following processes may be performed: IP address duplication is detected, for example, when devices with the same IP address but different MAC addresses exist in the ARP table. · Reconnect to the AP before the switch (before the connection destination was changed) (i.e., proceed to S701). A message indicating that the IP address has been duplicated is displayed on the display of the operation display unit 220, and the network is disconnected. · Dynamically obtain an IP address from the DHCP server (i.e., proceed to S808).
[0102] Furthermore, although the present embodiment has been described with regard to obtaining an IPv4 address by DHCP, the same method can be applied to obtaining an IPv6 address. When obtaining an IPv6 address, the MFP 100 sends a DHCPv6 Request to the DHCP server to request the same IPv6 address. If the request fails, the MFP 100 sends a DHCPv6 Solicit to re-obtain an IPv6 address.
[0103] The above-described process of S806 makes it possible to avoid changing the IP address due to a change in the connection destination by requesting the DHCP server for the IP address used before switching the connection destination AP. This allows the mobile terminal device 104 to continue processing (e.g., printing processing) that involves communication using the IP address used before the connection destination was changed. In other words, even if the connection destination is switched based on a connection destination change request during processing, it is possible to prevent the process from being unable to continue.
[0104] In this embodiment, when a connection destination change request is received in a situation where it is determined in S709 that a specific process involving communication is being performed, control is performed in S806 so that the IP address does not change before and after the change of connection destination, but this is not limiting. Regardless of whether a specific process involving communication is being performed or not, when the connection destination AP is changed based on a connection destination change request, control may be performed as in S806 so that the IP address does not change before and after the change of connection destination.
[0105] In the above-described processing of S806, an example has been described in which the IP address before switching the destination AP is requested from the DHCP server, thereby avoiding a change in the IP address due to a change in the destination, but this is not limited to this. In S806, the static IP address setting may be automatically turned on (i.e., the dynamic IP address setting may be turned off), and the previous IP address acquired before the destination change may be used as the static IP address to determine the IP address. This more reliably prevents the IP address from changing before and after a destination change based on a destination change request.
[0106] Furthermore, when the MFP 100 changes the AP of the connection destination based on the connection destination change request, the process of step S812 cancels a specific process (e.g., a print process) that was being executed involving communication if the IP address has changed. This prevents a situation in which a process involving communication that is currently being executed is prolonged while waiting for subsequent data that is not expected to arrive, and the next process cannot be accepted during that time. In other words, the state of waiting for subsequent data can be quickly released, and the next process can be quickly started in response to the acceptance.
[0107] Although the above describes the processing performed while print data is being received, similar processing can be applied when other data other than print data is being received or transmitted. For example, similar processing can be applied when scanning an original with the reading unit 219 and transmitting the scanned image (image data) to the mobile terminal device (104) via the AP. In this case, if a Yes determination is made in S708 of FIG. 7 described above, instead of or in addition to the determination in S709, a determination is made as to whether scan and transmission is currently being performed. If scan and transmission is not currently being performed, the process proceeds to S710. If scan and transmission is currently being performed, steps S712 to S715 and the processing in FIG. 8 are performed with the aforementioned "print" replaced with "scan and transmit."
[0108] In the present embodiment, control is performed in S806 to prevent the IP address from changing before and after the change of the connection destination. However, if the IP address cannot be changed, the specific process (e.g., printing process) that was being executed involving communication is canceled in S812. However, the present invention is not limited to this. Control to prevent the IP address from changing before and after the change of the connection destination (control like S806) may not be performed. That is, when the AP of the connection destination is changed based on a connection destination change request, a new dynamic IP address may be acquired and the IP address may be allowed to change, regardless of whether a specific process involving communication was being executed. In this case, there is a high possibility that the IP address has changed before and after the change of the connection destination. Therefore, without determining whether the IP address has changed before and after the change of the connection destination (the determination in S811), the specific process involving communication that was in progress may be canceled uniformly as in S812 when the connection destination is changed based on a connection destination change request.
[0109] The various controls described above as being performed by CPU 212 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.
[0110] Furthermore, although the present invention has been described in detail based on preferred embodiments thereof, 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-described embodiments merely represents one embodiment of the present invention, and each embodiment can be combined as appropriate.
[0111] Furthermore, in the above-described embodiment, the present invention has been described with reference to an MFP as an example. However, this is not limited to this example and can be applied to any wireless device that functions as an STA and is capable of processing a connection change request from an AP. Specifically, the present invention can be applied to personal computers, PDAs, tablet devices, mobile phone terminals such as smartphones, music players, game consoles, e-book readers, smartwatches, and various measuring devices (sensor devices) such as thermometers and hygrometers. 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 via USB or LAN cable terminals. Video output devices include devices such as set-top boxes, which acquire (download) videos and still images from the Internet identified by a URL specified by an electronic device and output them to a connected display device via a video output terminal such as HDMI (registered trademark). This enables streaming playback on the display device and mirroring display (displaying the content displayed on the electronic device on the display device). Furthermore, video output devices include 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. 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.
[0112] (Other embodiments) The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the 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 realizes one or more functions. [Explanation of symbols]
[0113] 100 MFP 101 AP1 102 AP2 103 DHCP Server 104 Portable terminal device 105 DNS Server
Claims
1. a receiving means for receiving a request to change the access point (AP) to be connected from the currently connected AP; a processing means for communicating with other devices via the connected AP and performing specific processing involving data transmission or reception; a control means for performing control so that, when a connection destination is changed in response to the change request in a first state in which a part of data for the specific process has been received or transmitted through communication with the other device and the reception or transmission of the remaining part has not been completed, the specific process is interrupted and the standby state for reception or transmission of the remaining part is released; An electronic device comprising:
2. 2. The electronic device according to claim 1, wherein the specific process is at least one of printing, scanning, and faxing.
3. 2. The electronic device according to claim 1, wherein execution of a process other than the specific process is not started while the standby state is not released.
4. 4. The electronic device according to claim 3, wherein when execution of the other process is instructed while the standby state is released, the other process is executed.
5. 2. The electronic device according to claim 1, wherein the specific process is a printing process performed by receiving print data from the other device, and the control means releases the standby state to eject paper that is being printed.
6. The electronic device further includes an acquisition unit for acquiring a dynamic IP address as the IP address of the electronic device, The electronic device according to claim 1, characterized in that when the acquisition means acquires a new dynamic IP address as a result of changing the AP to which the connection is made in response to the change request in the first state, the control means controls to cancel the standby state.
7. The electronic device described in claim 6, characterized in that when changing the connection destination in response to the change request in the first state, the control means controls the acquisition means to request the acquisition source so that the IP address of the electronic device after the change of connection destination will be the same IP address as the first IP address acquired by the acquisition means before the change of connection destination, and if the first IP address cannot be acquired even after the request, controls the acquisition means to acquire a new dynamic IP address.
8. The electronic device further includes a setting unit configured to set a static IP address set in advance as the IP address of the electronic device without acquiring a dynamic IP address by the acquiring unit, 7. The electronic device according to claim 6, wherein when the static IP address is set to be used, even if the connection destination is changed in response to the change request in the first state, the control means controls the electronic device to continue the specific processing without canceling the standby state.
9. 7. The electronic device according to claim 6, wherein the acquisition unit acquires an IP address according to DHCPv6.
10. The electronic device described in claim 1, characterized in that when the connection destination is changed in response to the change request in the first state, if the IP address of the electronic device does not change before and after the change, the control means controls the electronic device to continue the specific processing without canceling the standby state.
11. 2. The electronic device according to claim 1, wherein the electronic device performs connection and processing with the AP in accordance with the IEEE 802.11ax standard.
12. 2. The electronic device according to claim 1, wherein the electronic device is capable of performing at least one of processing conforming to Orthogonal Frequency-Division Multiple Access (OFDMA) and processing conforming to Target Wake Time (TWT).
13. 2. The electronic device according to claim 1, wherein the change of the connection destination based on the change request can change the connection destination to an AP in the 6 GHz band.
14. a receiving step of receiving a request to change the AP to be connected from a currently connected access point (AP); a processing step of communicating with another device via the connected AP and performing a specific process involving sending or receiving data; a control step of performing control so that, when a connection destination is changed in response to the change request in a first state in which a part of data for the specific process has been received or transmitted through communication with the other device and the reception or transmission of the remaining part has not been completed, the specific process is interrupted and the standby state for reception or transmission of the remaining part is released; 1. A method for controlling an electronic device, comprising:
15. A program for causing at least one computer to function as each of the means of the electronic device according to any one of claims 1 to 13.
16. A computer-readable storage medium storing a program for causing at least one computer to function as each of the means of the electronic device according to any one of claims 1 to 13.
Citation Information
Patent Citations
Communication device, control method thereof, and program
JP2019033445A
Mobile router, mobile router control method and mobile router control program
JP2021175068A