Electronic apparatus, information terminal, method for controlling the same, program, and storage medium
The electronic device manages AP changes by notifying the information terminal to maintain IP address continuity, addressing data transfer interruptions during AP switches, ensuring seamless communication.
Patent Information
- Application Number
- JP2023107823
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2023-06-30
- Publication Date
- 2025-01-17
AI Technical Summary
Existing technologies face issues where switching the connected access point (AP) can lead to data transmission or reception failures in wireless devices, particularly during data transfer processes such as printing or data exchange, due to potential IP address changes and loss of connectivity.
The solution involves an electronic device that receives a request to change the AP connection, performs specific processing, and sends a notification to the information terminal to detect the device before disconnecting from the current AP, ensuring seamless communication by maintaining IP address continuity during the switch.
This approach prevents data loss or interruption by ensuring continuous data transmission and reception even when the AP is switched, allowing complete data transfer processes to be completed.
Smart Images

Figure 2025006818000001_ABST
Abstract
Description
[Technical Field]
[0001] The present invention relates to an electronic device, an information terminal, a control method thereof, a program, and a storage medium that can change an access point (AP) to which a connection is made based on a connection change request from the AP. [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 is in the middle of receiving and printing print data from another device, such as a smartphone or PC, via the AP to which it is connected. In this case, if a request to change the connected AP is received and the connected AP is switched in response to the request, the STA's IP address may change. This means that the other device 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 being printed 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. Similarly, if the connected AP is switched while sending or receiving data other than print data, problems may arise, 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 can prevent data from being unable to be sent or received when the AP to which the connection is made is switched in response to a request to change the connection destination. [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 the information terminal via the AP to which the information terminal is connected and performing a specific process involving transmission or reception of data; a control means for, when receiving 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 information terminal and the remaining part has not been received or transmitted, notifying the information terminal of a request for a detection process to detect the electronic device before disconnecting the connection with the AP currently connected, and controlling the information terminal to change the connection destination in accordance with the change request after the notification; The present invention is characterized by having the following. [Effects of the Invention]
[0009] According to the present invention, it is possible to prevent a situation in which data transmission or reception becomes impossible when the AP of the connection destination is switched in response to a request to change the connection destination. [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. [Figure 9]10 shows a flowchart of a print data transmission process in a mobile terminal device. 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 configure settings such as the wireless LAN frequency band and frequency channel from this screen.
[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 performed in response to a connection destination change request in MFP 100. This processing is implemented by CPU 212 by 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. That is, when part of the print data is received, only the received amount is printed (for example, one line is received and printed), and when the remaining data is received, only that amount is printed again, and so on. 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, the reading unit 219 is driven to read the original in S717, and the read image is printed by the printing unit 222, thereby executing copying.
[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, 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 S802, 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.
[0088] In S802, the 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). If the IP address is static, the process of S806, which will be described later, is not performed before disconnecting from the currently connected AP.
[0089] In S803, 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.
[0090] In S804, the CPU 212 determines the IP address as a static IP address, and the process proceeds to S811. This process is the same as the process in S704 of FIG.
[0091] In S806, before disconnecting from the currently connected AP, the CPU 212 transmits (notifies) to the mobile terminal device 104 a name resolution request, which is a request to perform name resolution processing, via the currently connected AP. The name resolution request is a request to perform detection processing again from the information terminal device 104 to detect the MFP 100. The reason for the notification is that the IP address may change when the AP to which the MFP 100 is connected switches from AP1 (101) to AP2 (102). The mobile terminal device 104 cannot communicate to continue the print job unless it knows the new IP address of the MFP 100. The mobile terminal device 104 requests name resolution from the DNS server 105 by specifying the domain of the MFP 100 again, and if the name resolution is successful, it knows the new IP address of the MFP 100. Communication between the information terminal device 104 and the MFP 100 can be performed using this new IP address. Therefore, the remaining portion of the print data of the print job being printed can be sent from the information terminal device 104 to the MFP 100, allowing the printing process to continue. However, the information terminal device 104 does not normally request name resolution again while sending a print job. Therefore, at this timing, the MFP 100 notifies the information terminal device 104 that a new name resolution request is required, prompting the information terminal device 104 to perform name resolution. This enables communication between the information terminal device 104 and the MFP 100 even after the AP to which the MFP 100 is connected has changed. Conversely, it is possible to prevent a situation in which communication between the information terminal device 104 and the MFP 100 becomes impossible after the AP to which the MFP 100 is connected has changed, causing data transmission or reception to become impossible. Specific notification methods include, for example, using protocols such as HTTP, MIB, IPP, and WSD. Other communication protocols such as TCP and UDP may also be used for notification.
[0092] The processing in S807 and S808 is the same as the processing in S802 and S803 described above, and therefore a description thereof will be omitted.
[0093] In S809, the CPU 212 requests the DHCP server 103 to assign a dynamic IP address. This process is similar to the process in S703 of FIG.
[0094] In S810, 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 S811, the CPU 212 saves in the RAM 214 either the static IP address determined in S804 or the dynamic IP address newly assigned by the DHCP server 103 in S810. In this case, the IP address was assigned before the destination AP was switched.
[0096] In S812, the CPU 212 communicates with the mobile terminal device 104, which is the other device, and continues the print processing. In this case, the AP of the connection destination has been changed based on the connection destination change request, but the IP address has not changed, or the information terminal device 104 has learned the new IP address of the MFP 100 (the IP address acquired in S810) by performing new name resolution. Therefore, communication between the mobile terminal device 104 and the MFP 100 can be executed. Therefore, the print processing involving communication continues to be executed, and the print data included in the print job is printed to the end.
[0097] In S813, 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 S814.
[0098] In S814, the CPU 212 determines whether the print processing that was continued (continued) in S812 and involved communication with the mobile terminal device 104 has ended (whether printing was completed). If it is determined that printing has ended, the processing in Fig. 8 ends and the process proceeds to S716 in Fig. 7; otherwise, the process proceeds to S812.
[0099] 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., perform steps S806 to S810).
[0100] 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.
[0101] 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."
[0102] 9 shows a flowchart of the print data transmission process in the mobile terminal device 104. This process is performed on the mobile terminal device 104 side in conjunction with the connection destination change process in FIG. 8 performed by the MFP 100. This process is realized by the CPU 412 loading a program stored in the ROM 413 into the RAM 414 and executing it.
[0103] In step S901, the CPU 412 connects to an AP in infrastructure mode. In this example, it is assumed that the AP is AP1 (101).
[0104] In S902, the CPU 412 determines whether or not a print instruction has been received, which is an instruction to transmit a print job to the MFP 100. For example, if a print instruction has been received from a user by a printer driver installed in the mobile terminal device 104, the process proceeds to S903. If not, the process returns to S902, and the description thereof will be omitted.
[0105] In S903, the CPU 412 performs a detection process to detect the MFP 100 on the network using the host name or device name of the MFP 100 stored in advance, and identifies the IP address of the MFP 100. Specifically, the CPU 412 requests name resolution using a protocol that resolves an IP address from a host name or device name, such as multicast DNS or LLMNR protocol, or the DNS server 105, and identifies the IP address of the MFP 100. At least one of the above methods may be selected depending on the network configuration. The CPU 412 may perform the process of S903 using a function of an operating system (OS) incorporated in the mobile terminal device 104. Note that the process of S903 may be performed to identify the IP address of the MFP 100 before receiving the print instruction in S902.
[0106] Multicast DNS (mDNS) is a communication protocol that can be used even if a DNS server 105 (Domain Name System server) does not exist. mDNS broadcasts queries across a network, simultaneously querying all hosts on the same network. Hosts that match the queried host name identify themselves and respond with their IP address.
[0107] LLMNR (Link-Local Multicast Name Resolution) is a mechanism for searching for the correspondence between host names and IP addresses, and performs name resolution without using a server, limited to the local network. Name resolution is possible even in environments where the DNS server 105 cannot be used. With LLMNR, when you want to know the IP address of a computer with a certain host name (in this case, the MFP 100), you send a query to the local network all at once using broadcast communication. The device with that host name replies with its own IP address to the sender.
[0108] In S904, CPU 412 starts sending print data (print data included in the print job) to the IP address of MFP 100 identified in S903 as the destination, so that mobile terminal device 104 can execute printing using MFP 100. As described above, MFP 100 prints only the received amount of print data when it receives it (for example, receives and prints one line), and then prints the remaining data when it receives it, repeating this process to perform printing. Therefore, mobile terminal device 104 does not send all of the print data to MFP 100 at once, but instead sends the divided print data sequentially according to the progress of printing.
[0109] In S905, the CPU 412 determines whether or not it has received a name resolution request transmitted from the MFP 100. The name resolution request is the one transmitted in S806 of Fig. 8 described above. If a name resolution request has been received, the process proceeds to S906; otherwise, the process proceeds to S910.
[0110] In step S906, the CPU 412 temporarily suspends the transmission of print data. This is because it is assumed that communication will no longer be possible using the IP address that was used up until now due to the reception of the name resolution request.
[0111] In S907, the CPU 412 performs the same process as in S903 again to detect the MFP 100 again and identify the new IP address of the MFP 100. That is, it requests name resolution and performs name resolution.
[0112] In S908, CPU 412 determines whether a new IP address of MFP 100 has been identified. If name resolution is successful and a new IP address of MFP 100 has been identified, the process proceeds to S910; if not, the process proceeds to S909. Even if name resolution is successful, if the identified IP address is the same as the IP address that MFP 100 previously used before the connection destination was changed, it is possible that MFP 100 has not yet disconnected from the previous AP. Therefore, if the identified IP address is the same as the IP address that MFP 100 previously used before the connection destination was changed, the process may determine No in S908 and proceed to S909. Alternatively, the process of S907 may be executed after a certain amount of time (several seconds to several tens of seconds) has elapsed since it was determined in S905 that the name resolution request has been received, so that the process is executed at a timing that is assumed to be after MFP 100 has disconnected from the previous AP.
[0113] In S909, the CPU 412 determines whether a predetermined time (several seconds to several tens of seconds) has elapsed since it was determined in S905 that a name resolution request was received. If the predetermined time has not elapsed (if it is within the predetermined time), the process returns to S907 and performs the detection process for the MFP 100 again. This is because even if the attempt to identify the new IP address of the MFP 100 initially failed, this may have been because the MFP 100 had not yet completed re-acquisition of an IP address following a change in the connection destination. If the predetermined time has elapsed, the MFP 100 will have completed re-acquisition of an IP address following a change in the connection destination, and there is a possibility that detection of the MFP 100 from the mobile terminal device 104 will be successful, so a retry is performed. If the predetermined time has elapsed, the detection of the MFP 100 is abandoned, and the transmission of the print data is forcibly terminated without being resumed, and the print job is terminated. The process then returns to S902 and awaits another print instruction.
[0114] In S910, CPU 412 resumes the transmission of print data to MFP 100 that was stopped in S906. More specifically, the rest of the print data is sent to MFP 100, with the new IP address of MFP 100 identified in S907 (the IP address after the change of the destination AP) as the destination. As a result, the rest of the print data is received by MFP 100, and the rest is printed in MFP 100, allowing printing to be completed to the end.
[0115] In S911, the CPU 412 determines whether the transmission of the print data started in S904 is complete (whether the transmission of the entire print data is complete). If it is not complete, the process returns to S905, and if it is complete, the process proceeds to S902.
[0116] As described above, MFP 100 can continue and complete printing by notifying mobile terminal device 104 that it needs to perform its own re-detection process (name resolution, identification of a new IP address) again just before switching the connection destination AP. In other words, it is possible to prevent a situation where data transmission or reception becomes impossible when the connection destination AP is switched in response to a connection destination change request.
[0117] Although the above describes the processing performed while print data is being received, similar processing can be applied while other data other than print data is being received or while other data is being 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, the processing in S712 to S715 and the processing in FIGS. 8 and 9 is performed with the aforementioned "print" replaced with "scan and transmit."
[0118] The various controls described above as being performed by CPU212 or CPU412 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.
[0119] 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.
[0120] 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.
[0121] (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]
[0122] 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 an access point (AP) to be connected from a currently connected AP; a processing means for communicating with an information terminal via a connected AP and performing a specific process involving transmission or reception of data; a control means for, when receiving 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 information terminal and the remaining part has not been received or transmitted, notifying the information terminal of a request for detection process for detecting the electronic device before disconnecting the connection with the AP currently connected, and controlling the information terminal to change the connection destination in accordance with the change request after the notification; 1. An electronic device comprising:
2. 2. The electronic device according to claim 1, wherein the detection process is a process for identifying an IP address of the electronic device after switching an AP to which the electronic device is connected in response to the change request.
3. The electronic device according to claim 1 , wherein the detection process includes a name resolution process for the electronic device.
4. 2. The electronic device according to claim 1, wherein the detection process includes at least one of a process using a multicast DNS, a process using an LLMNR, and a process of requesting a DNS server for name resolution.
5. 2. The electronic device according to claim 1, wherein the specific process is at least one of printing, scanning, and faxing.
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 a change in the AP to which the connection is made in response to the change request in the first state, the control means controls the electronic device to perform the notification.
7. The electronic device described in claim 1, characterized in that if the acquisition means is not set to acquire 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 the electronic device so as not to perform the notification in the first state.
8. The electronic device according to claim 1, characterized in that the information terminal receives or transmits a portion of the data for the specific processing to the electronic device based on receiving the notification, and executes the detection processing while the reception or transmission of the remaining portion has not been completed.
9. 9. The electronic device according to claim 8, wherein, when a new IP address of the electronic device is identified in the detection process, the information terminal receives or transmits the remaining portion to the new IP address as a destination.
10. 2. The electronic device according to claim 1, wherein the processing means continues the specific process by receiving or transmitting the remaining part through communication with the information terminal after changing the connection destination in response to the change request.
11. 2. The electronic device according to claim 1, wherein the electronic device performs connection and processing with the AP in compliance with the IEEE 802.11ax standard.
12. 2. The electronic device according to claim 1, characterized in that the electronic device can perform at least one of a process conforming to Orthogonal Frequency-Division Multiple Access (OFDMA) and a process 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 enables the connection destination to be changed to an AP in the 6 GHz band.
14. A receiving means for receiving a request to change an access point (AP) to be connected from a currently connected AP; a processing means for communicating with an information terminal via a connected AP and performing a specific process involving transmission or reception of data; a control means for, when receiving 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 information terminal and the remaining part has not been received or transmitted, notifying the information terminal of a request for detection process for detecting the electronic device before disconnecting the connection with the AP currently connected, and controlling the information terminal to change the connection destination in accordance with the change request after the notification; The information terminal capable of communicating with an electronic device having Based on the reception of the notification, control is performed so that the electronic device receives or transmits a part of the data for the specific process, and performs the detection process while the reception or transmission of the remaining part is not completed; When a new IP address of the electronic device is identified in the detection process, the remaining part is controlled to be received or transmitted to the new IP address as a destination. Second Control Means An information terminal comprising:
15. The information terminal according to claim 14, characterized in that the second control means, if the new IP address of the electronic device cannot be identified in the detection process, controls the detection process to be performed again within a predetermined time after receiving the notification.
16. A receiving step of receiving a request to change an access point (AP) to be connected from a currently connected access point; A processing step of communicating with an information terminal via a connected AP and performing a specific process involving transmission or reception of data; a control step of, when receiving the change request in a first state in which a part of data for the specific process is received or transmitted through communication with the information terminal and the reception or transmission of the remaining part is not completed, notifying the information terminal of a request for a detection process for detecting the electronic device before disconnecting the connection with the AP currently connected, and controlling to change the connection destination in accordance with the change request after the notification; 13. A method for controlling an electronic device comprising:
17. A receiving means for receiving a request to change an access point (AP) to be connected from a currently connected AP; a processing means for communicating with an information terminal via a connected AP and performing a specific process involving transmission or reception of data; a control means for, when receiving 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 information terminal and the remaining part has not been received or transmitted, notifying the information terminal of a request for detection process for detecting the electronic device before disconnecting the connection with the AP currently connected, and controlling the information terminal to change the connection destination in accordance with the change request after the notification; A method for controlling an information terminal capable of communicating with an electronic device having Based on the reception of the notification, control is performed so that the electronic device receives or transmits a part of the data for the specific process, and performs the detection process while the reception or transmission of the remaining part is not completed; When a new IP address of the electronic device is identified in the detection process, the remaining part is controlled to be received or transmitted to the new IP address as a destination. Second Control Step 13. A method for controlling an information terminal comprising:
18. A program for causing at least one computer to function as each of the means of the electronic device recited in any one of claims 1 to 13 or each of the means of the information terminal recited in any one of claims 14 and 15.
19. A computer-readable storage medium storing a program for causing at least one computer to function as each of the means of an electronic device described in any one of claims 1 to 13, or each of the means of an information terminal described in any one of claims 14 and 15.
Citation Information
Patent Citations
Mobile router, mobile router control method and mobile router control program
JP2021175068A