Method and system for fast network reconnection
By storing the AP's network parameters in IoT devices and listening for beacon signals in wake-up mode, IoT devices can quickly reconnect to the network, solving the problem of delayed reconnection in sleep mode and improving user experience and system reliability.
Patent Information
- Application Number
- CN202410282411.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-03-12
- Publication Date
- 2025-09-12
AI Technical Summary
There is a delay when IoT devices reconnect to the wireless network after waking up from sleep mode, resulting in a poor user experience. Existing technologies require network reconnection to be completed within 500 milliseconds.
During the initial connection, the IoT device stores the AP's network parameters, such as SSID, password, channel, IP address, etc., and listens to beacon signals in wake-up mode, directly compares and matches the SSID to quickly establish a connection, skipping full channel scanning and PSK calculation, and using the stored parameters for fast reconnection.
It reduces reconnection delays, achieves a quick response within 1 second, enhances system reliability and robustness, and is applicable to existing Wi-Fi protocols and network infrastructure.
Smart Images

Figure CN120640439A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates generally to wireless communications. In particular, example embodiments of the present disclosure relate to systems and methods for quickly wirelessly reconnecting to a previously connected device. Background Art
[0002] The Internet of Things (IoT) system comprises a network of physical objects (called "smart devices" or "IoT devices") embedded with sensors, software, and other technologies designed to connect and exchange data with other devices over the internet. For example, IoT devices are used in home automation to control lighting, heating and air conditioning, media and security systems, and camera systems. IoT devices collect and share data over the internet to provide advanced functionality beyond that of standalone devices.
[0003] When an IoT device is inactive, it typically enters a low-power sleep mode to conserve energy. During this sleep mode, the IoT device deactivates power-consuming components, such as the wireless network module (e.g., transceiver), processor, and / or sensors. Consequently, when a user attempts to use a dormant IoT device, such as by pressing a smart call button to communicate with an indoor receiver or a remote user device, there is often a delay in reactivating and reconnecting to the access point (AP). For example, after waking from sleep mode or restarting, an IoT device typically performs a full channel scan to discover previously connected APs and calculate a pre-shared key (PSK) to reauthenticate the wireless connection. Once connected to an AP, the IoT device can perform Dynamic Host Configuration Protocol (DHCP) to determine the IP address and other parameters. A full channel scan takes approximately 500 milliseconds, PSK calculation takes approximately 2.2 seconds, and DHCP takes approximately 500 milliseconds. Through these steps, the total delay before the IoT device can reconnect to the network and respond can exceed 3 seconds, resulting in a poor user experience.
[0004] Therefore, a method for rapid network reconnection (eg, within or about 500 milliseconds) is needed. Summary of the Invention
[0005] In one aspect, a method for network reconnection at an Internet of Things (IoT) device is provided. The method may include establishing a first connection with an access point (AP), storing network parameters of the AP in a memory of the IoT device during the first connection, the network parameters of the AP including a service set identifier (SSID) and a channel, entering a power save mode to terminate the first connection with the AP, receiving a wake-up trigger from an IoT sensor communicatively coupled to the IoT device, changing from the power save mode to a wake-up mode, listening on the stored channel while operating in the wake-up mode until a beacon signal is received or a predetermined duration has elapsed, upon receiving the beacon signal, comparing the stored SSID with an SSID contained in the beacon signal, and in response to a comparison result that the stored SSID matches the SSID contained in the beacon signal, establishing a second connection with the AP based on the beacon signal.
[0006] In one aspect, an Internet of Things (IoT) device is provided. The IoT device may include a processor and a memory. The memory stores instructions that, when executed by the processor, configure the IoT device to establish a first connection with an AP, store network parameters of the AP in the memory of the IoT device during the first connection, the network parameters of the AP including an SSID and a channel, enter a power saving mode to terminate the first connection with the AP, receive a wake-up trigger from an IoT sensor communicatively connected to the IoT device, change from the power saving mode to a wake-up mode, and listen on the stored channel while operating in the wake-up mode until a beacon signal is received or a predetermined duration has elapsed. Upon receiving the beacon signal, the memory compares the stored SSID with the SSID contained in the beacon signal, and in response to a comparison result that the stored SSID matches the SSID contained in the beacon signal, establish a second connection with the AP based on the beacon signal.
[0007] In one aspect, a non-transitory computer-readable storage medium is provided. The computer-readable storage medium includes instructions that, when executed by an IoT device, cause the IoT device to establish a first connection with an AP, store network parameters of the AP in a memory of the IoT device during the first connection, the network parameters of the AP including an SSID and a channel, enter a power save mode to terminate the first connection with the AP, receive a wake-up trigger from an IoT sensor communicatively coupled to the IoT device, change from the power save mode to a wake-up mode, and while operating in the wake-up mode, listen on the stored channel until a beacon signal is received or a predetermined duration has elapsed, and upon receiving the beacon signal, compare the stored SSID with the SSID contained in the beacon signal, and in response to a match between the stored SSID and the SSID contained in the beacon signal, establish a second connection with the AP based on the beacon signal. BRIEF DESCRIPTION OF THE DRAWINGS
[0008] To facilitate identification of the discussion of any particular element or activity, the most significant digit(s) in a reference number refers to the drawing number in which the element or activity is first introduced.
[0009] Figure 1 is a block diagram illustrating an Internet of Things (IoT) system, according to some example embodiments.
[0010] Figures 2A-2B is a schematic diagram illustrating an example manner of establishing a first connection between an IoT device and an AP according to some example embodiments.
[0011] Figure 3 is a schematic diagram illustrating two stages of a quick connection according to some example embodiments.
[0012] Figure 4 is a flowchart illustrating operations of an IoT device when reconnecting with an AP device according to some example embodiments.
[0013] Figure 5 is a flowchart illustrating operations of an IoT device when reconnecting with an AP device according to some example embodiments.
[0014] Figure 6 is a flow chart illustrating operations of an IoT device in handling IP conflicts during a fast reconnect, according to some example embodiments.
[0015] Figure 7 is a flow chart illustrating operation of an Internet of Things device utilizing a stored password to authenticate with an AP during a fast reconnect, according to some example embodiments.
[0016] Figure 8is a flow chart illustrating the operation of an IoT device in handling a situation where gateway / DNS parameters have changed since an initial connection, according to some example embodiments. DETAILED DESCRIPTION
[0017] The following description includes systems, methods, techniques, instruction sequences, and computer program products that embody the illustrative embodiments of the present disclosure. In the following description, for the purpose of explanation, many specific details are set forth to provide an understanding of the various embodiments of the subject matter of the present invention. However, it will be apparent to those skilled in the art that embodiments of the subject matter of the present invention can be practiced without these specific details. Typically, well-known instruction examples, protocols, structures, and techniques are not necessarily shown in detail.
[0018] As mentioned above, when a user attempts to use a dormant IoT device that has been disconnected from its original wireless connection, there is often a delay of more than 3 seconds before the IoT device is able to reconnect to the network and respond to the user's request, which significantly degrades the user experience. Therefore, a method for fast network reconnection is needed.
[0019] The present disclosure provides a system and method for quickly reconnecting an IoT device to a previously connected AP using stored network parameters. In summary, an IoT device can store the AP's network parameters during the initial connection, including the service set identifier (SSID), password, channel, IP address, gateway settings, domain name system (DNS) settings, etc. When the IoT device wakes up from sleep mode, it can read these stored parameters and quickly re-authenticate and reconnect to the AP.
[0020] Specifically, during the initial connection between the IoT device and the AP, the IoT device can perform a full channel scan to detect available APs. The IoT device can select a target AP from the detected APs based on the SSID and password entered by the user. The IoT device can calculate a pre-shared key (PSK) based on the SSID, the length of the SSID and / or the password, and use the PSK to establish a connection with the AP. The IoT device can perform DHCP to obtain an assigned IP address and other network connection details (e.g., gateway settings, DNS settings). All network parameters can be stored in the memory of the IoT device (e.g., flash memory) to facilitate future reconnection. The IoT device can enter an energy-saving sleep mode during non-operation and deactivate its wireless communication components (e.g., transceiver), thereby terminating the initial connection.
[0021] When an IoT device receives a wake-up trigger while operating in sleep mode, the IoT device can switch from sleep mode to wake-up mode or active mode. The wake-up trigger can be triggered based on a user's physical interaction with an IoT sensor connected to the IoT device (such as a doorbell). After switching to wake-up mode or active mode, the IoT device listens for a beacon signal on a stored channel. If the SSID contained in the beacon signal matches the stored SSID, the IoT device determines that the beacon signal is broadcast from the original AP and sends the stored PSK to the AP without recalculation, saving a lot of time. When the PSK is authenticated, the IoT device can establish a connection with the AP. If the AP is not encrypted, the IoT device can establish a connection directly.
[0022] The IoT device can then use the stored static IP address, gateway settings, and DNS settings to restore network connectivity with internal and external devices through the AP. If another device acquires the IoT device's stored static IP address, or the AP dynamically assigns an IP address, the IoT device can perform DHCP to obtain a new IP address. DHCP is a network management protocol that requests the AP to lease or assign an IP address to a connected device and provide network configuration details. These network configuration details can include gateway and DNS settings. The IoT device can detect if the AP's gateway or DNS settings have changed since the initial connection and, if necessary, re-acquire the updated parameters through DHCP. The new IP address, gateway, and DNS settings overwrite the previously stored values in the IoT device's memory. If the SSID contained in the beacon signal does not match the stored SSID, the IoT device can continue listening on the stored channel for a preset duration. After the preset duration, the IoT device can perform a full channel scan to detect beacon signals from the AP.
[0023] The following are some example application scenarios of the present disclosure, but are not limited to these:
[0024] 1. After detecting that the user presses the smart doorbell, the smart IoT device quickly reconnects to the home Wi-Fi router to send a notification to indoor devices or the user's device.
[0025] 2. After detecting that the user has pressed the smart call button, the smart IoT device quickly reconnects to the home Wi-Fi router to establish a one-way or two-way video or audio call with the indoor receiver or user device.
[0026] 3. After detecting that a user touches a display of a device (eg, a smart treadmill, a smart TV, etc.) while the device is dormant, the device reconnects to the Wi-Fi router to receive content (eg, an advertisement) from a server and presents the content.
[0027] The present disclosure potentially has at least the following advantages:
[0028] 1. Reduce reconnection delay from more than 3 seconds to less than 1 second, providing faster wake-up response time.
[0029] 2. Enhance the reliability and robustness of the IoT system by automatically handling various situations such as IP address conflicts and AP setting changes through the automatic takeover (fallback) mechanism.
[0030] 3. Provide broad compatibility with existing Wi-Fi protocols and network infrastructure without requiring specialized hardware requirements or new network protocols.
[0031] Figure 1 is a block diagram illustrating an Internet of Things (IoT) system 100 according to some example embodiments.
[0032] IoT server 102 serves as the backbone of IoT system 100, managing data and coordinating communications between other devices in the IoT system. IoT server 102 collects, processes, and stores data sent from IoT devices 110 and 112 and IoT sensors 114 and 116. It also performs tasks such as device management, data analysis, and security enforcement to ensure smooth operation and gain valuable insights from the collected data. For example, IoT server 102 can receive instructions from monitoring device 120 via internet 104 and follow these instructions to manage IoT device 110 to perform specific tasks.
[0033] Internet 104 is a network that allows devices in IoT system 100 to communicate and exchange data. Internet 104 provides a path for data to travel from IoT devices 110 and 112 and IoT sensors 114 and 116 to IoT server 102, and vice versa. Internet 104 also enables remote management, data analysis, and over-the-air updates for IoT devices. It should be noted that Internet 104 can be combined with or replaced by one or more other types of networks.
[0034] AP 106 acts as a bridge between devices (e.g., IoT devices 110 and 112 and IoT sensors 114 and 116) and the Internet 104. It enables the devices to connect to the Internet 104 wirelessly, for example, via Wi-Fi, and facilitates data transmission between these devices and IoT server 102.
[0035] In some examples, when IoT devices 110 and 112 connect to AP 106, network parameters such as the IP address assigned to the IoT device, Domain Name System (DNS) server settings, and gateway settings can be stored. Specifically, an IP address is a numerical identifier assigned to each device to be uniquely identified on a local network. DNS converts domain names into corresponding IP addresses for routing transmissions. Gateway settings refer to the configuration of the AP that connects wireless interface 108 to the Internet 104. The present disclosure allows these parameters, as well as the credentials of AP 106 itself, to be stored during the initial connection, so that IoT devices can reconnect to the same AP 106 by restoring the previously established network configuration within milliseconds when waking from sleep.
[0036] Wireless interface 108 refers to the radio spectrum used for wireless communications between AP 106 and IoT devices 110 and 112 and / or IoT sensors 114 and 116. It includes standards, protocols, and technologies that define how data is formatted and transmitted wirelessly. For example, wireless interface 108 may utilize a Wi-Fi network under the IEEE 802.11 standard. Alternatively or additionally, wireless interface 108 may utilize Bluetooth, ZigBee, Z-Wave, LPWAN, RFID, NFC, and the like.
[0037] IoT devices 110 and 112 are physical devices, such as appliances, machines, or gadgets, equipped with the hardware and software necessary to perform specific tasks. They interact with IoT sensors 114 and 116 and communicate with IoT server 102 via AP 106 and the internet 104. IoT devices 110 and 112 may each include a processor, a transceiver, and / or memory. The transceiver transmits and receives wireless signals to facilitate communication via wireless interface 108. For example, during an initial connection, the transceiver exchanges data packets with AP 106 to obtain credentials and network parameters. The processor may be configured to execute computer-readable instructions stored in the memory to perform various functions and operations of the IoT device. For example, the processor may collect sensor data, communicate with other devices via the internet, execute local analysis algorithms, control mechanical components, and so on. The memory may store computer-readable instructions, firmware, software, operating parameters, network credentials, collected sensor data, and other information that enables the IoT device to function. The memory may be volatile or non-volatile. In some examples, the memory is non-volatile flash memory.
[0038] In an example of a fast reconnect process, these components coordinate as follows: During the initial association process, the processor calculates the PSK value, the transceiver performs a full channel scan, and sends the PSK value to the scanned AP to establish communication with it. The processor stores the network parameters in memory. Later, when waking from sleep, the processor retrieves these credentials from memory and provides them to the transceiver, allowing and controlling the transceiver to send a connection request directly to AP 106. Once authenticated based on the provided credentials, communication is restored within a few hundred milliseconds.
[0039] IoT sensors 114 and 116 are devices or modules that detect changes in the environment or system and convert these changes into data that can be understood and used by IoT devices 110 and 112 or IoT server 102. These sensors can monitor various parameters such as temperature, humidity, pressure, light, motion, or other environmental factors. IoT sensors 114 and 116 may include doorbell, microphone, and / or camera sensors, but these are not limiting.
[0040] User device 118 is a portable device that can interact with the IoT system, such as a smartphone or tablet. It can be used to remotely monitor, control, or configure IoT devices 110 and 112. It communicates with IoT server 102 via the Internet 104, allowing users to interact with IoT system 100 from anywhere.
[0041] The monitoring device 120 is a device specifically designed to observe and display information from the IoT system 100. This can be a dedicated display that shows data collected by the IoT sensors 114 and 116, or it can be a computer used by a system administrator to manage the IoT system 100. It provides real-time or historical data visualization, allowing for effective system monitoring and troubleshooting.
[0042] It should be noted that the present disclosure is not limited to IoT systems with Wi-Fi networks under the IEEE 802.11 standard. Rather, the present disclosure can be used in any other similar or different types of systems with similar or different types of network environments. Such applications are within the scope of protection of the present disclosure.
[0043] Figures 2A-2B is a diagram illustrating an example manner of establishing an initial connection between an IoT device (eg, IoT devices 110 and 112 ) and an AP (eg, AP 106 ), according to some example embodiments.
[0044] like Figure 2AAs shown, a user device 118, such as a mobile phone, may first connect to AP 106. Specifically, user device 118 may perform a full channel scan, checking each available channel. This scan may discover nearby Wi-Fi network signals and the SSIDs of their corresponding APs. User device 118 may display a list of SSIDs on its display. From the list of detected SSIDs, user device 118 or a user of user device 118 may select a target AP 106 for connection. The user may also enter the password or passphrase of the selected AP 106 into user device 118 via the user interface of user device 118. Based on the SSID of AP 106, the length of the SSID, and the provided passphrase, user device 118 may generate a pre-shared key (PSK) value for authentication. Different algorithms may be used to calculate different key values based on different encryption methods, but all are within the scope of the present disclosure. User device 118 sends the generated PSK value to AP 106. After verifying the PSK value, AP 106 establishes a secure Wi-Fi connection with user device 118. User device 118 can then request additional network details from AP 106 using Dynamic Host Configuration Protocol (DHCP). DHCP can involve a four-step interaction: Discover, Offer, Request, and Acknowledgement. During the Discover step, user device 118 can broadcast a Discover message to locate AP 106. During the Offer step, AP 106 responds with an Offer message proposing an IP address. During the Request step, user device 118 selects an IP address and broadcasts a Request message to accept it. During the Acknowledgement step, AP 106 sends an Acknowledgement to confirm the IP lease. AP 106 can assign and return parameters such as an IP address, gateway settings, and DNS settings to user device 118. User device 118 can locally store these parameters along with AP 106's credentials (e.g., SSID, password, PSK value, etc.).
[0045] User device 118 can establish a second connection with the IoT device. This second connection can be established via the same or a different network than the first connection between user device 118 and AP 106. Through this second connection, user device 118 can send the stored network parameters to IoT device 110. IoT device 110 can persist these network parameters in its internal storage memory. With the locally persisted SSID, password, PSK value, IP address, gateway, DNS, and other network parameters, IoT device 110 can quickly reconnect to AP 106 upon waking.
[0046] Specifically, the IoT device 110 can listen on the stored channel, waiting to detect a beacon frame broadcast by the AP 106 containing its SSID. Upon receiving the beacon frame, the IoT device 110 can compare the SSID value of the frame with the locally stored SSID. If the SSIDs match, the IoT device 110 can immediately initiate authentication by transmitting the stored PSK value to the AP 106. In addition, using the locally cached network configuration, the IoT device 110 can skip the additional DHCP request to obtain an IP address from the AP 106. Instead, the IoT device 110 can directly apply the saved static IP address, gateway settings, and DNS server settings to immediately reconnect to the network through the AP 106 without waiting for the parameter allocation delay in DHCP.
[0047] Or, as Figure 2B As shown, the user device 118 can directly direct the IoT device 110 to connect to the access point (AP) rather than facilitating the connection itself.
[0048] Specifically, user device 118 first connects to IoT device 110 via a network such as Bluetooth or Wi-Fi. An application installed on user device 118 can then receive a user instruction to scan available wireless channels for nearby network signals. From the list of discovered SSIDs broadcast by the AP, the user can select the target AP to which IoT device 110 wants to connect, which in this example is AP 106. The user can also enter the password or passphrase for the selected AP 106 into the application via a user interface. User device 118 transmits the target SSID and password to IoT device 110 via the network.
[0049] Applying the received credential information, the IoT device 110 can initiate authentication with the AP 106 by sending a PSK value calculated based on the SSID, the length of the SSID, and the password. After verifying the PSK, the AP 106 establishes a secure connection with the IoT device 110. When connected, the IoT device 110 can use DHCP to request and obtain additional network configuration details from the AP 106, such as an IP address, gateway settings, and DNS settings. The IoT device 110 stores these SSID, password, channel, PSK value, IP address, gateway settings, DNS settings, and other network parameters locally in non-volatile memory. The stored parameters allow the IoT device 110 to quickly reconnect to a previously connected AP 106 when waking from sleep mode by using the stored data rather than performing a lengthy scanning and authentication process.
[0050] Figure 3FIG. 4 is a diagram illustrating two stages 302 and 304 of a fast connection between an IoT device (eg, IoT device 110 , IoT device 112 ) and an AP (eg, AP 106 ) according to some example embodiments.
[0051] In stage 1 (302), the IoT device 110 (or IoT device 112) does not yet have credentials for the AP 106. In step 306, the user device 118 connects to the AP 106 and sends network parameters to the IoT device 110, or the IoT device is directly directed to connect to the AP 106 by an application installed on the user device 118. In step 308, as part of the first connection, network credentials and configuration details such as SSID, cryptographic keys, PSK values, channels, IP addresses, gateway settings, DNS settings, etc. are stored in memory (e.g., non-volatile flash memory) on the IoT device 110. In step 310, when the IoT device 110 wakes up or restarts, the IoT device 110 determines whether it wants to reconnect to the same AP 106. If so, the IoT device 110 can read the stored network credentials and configuration and use them to reconnect to the AP 106.
[0052] Later, in stage 2 (304), the IoT device 110 can use these saved parameters to reconnect to the AP 106 directly after waking up from sleep mode or restarting. Steps 314, 316, and 318 are similar to steps 308, 310, and 312, respectively, and therefore will not be repeated.
[0053] Figure 4 is a flow diagram illustrating the operation of an IoT device (e.g., IoT device 110, IoT device 112) when reconnecting with a previously associated AP (e.g., AP 106), according to some example embodiments.
[0054] In step 402, the IoT device may first connect to the AP. In step 404, the IoT device may store parameters in its flash memory. The parameters may include the SSID, password, PSK value, channel, IP address, etc. When the IoT device is not operating, it may enter sleep mode or shut down to save power. In step 406, the IoT device is powered back on or wakes up to reconnect. In step 408, the IoT device reads the parameters stored in the flash memory. In step 410, the IoT device may determine whether the SSID and SSID length match the SSID and length in the received beacon signal. If the SSID matches, method 400 proceeds to step 412 or 414, depending on whether the AP is encrypted; otherwise, method 400 proceeds to full channel scan. If the AP is encrypted (414), then in step 418, the IoT device may read the stored channel, quick connect flag, and PSK value. The PSK value is used for authentication. If the AP is not encrypted (412), then in step 416, the IoT device may read the stored channel and quick connect flag. In step 420, the IoT device may determine whether it has a stored static IP address. If it has a stored static IP address (422), then in step 424, the IoT device may determine whether an IP conflict exists; otherwise, the IoT device may continue to perform DHCP in step 426. If an IP conflict exists, then in step 426, the IoT device may continue to perform DHCP.
[0055] Figure 5 1 is a flowchart illustrating the operations of an IoT device (e.g., IoT device 110, IoT device 112) when reconnecting to an AP device (e.g., AP 106), according to some example embodiments. Method 500 may be embodied in computer-readable instructions for execution by one or more processors, such that the operations of method 500 may be performed in part or in whole by functional components of IoT device 110 (or IoT device 112); therefore, method 500 is described below with reference thereto by way of example. However, it should be understood that at least some of the operations of method 500 may be deployed on various other hardware configurations besides IoT device 110. Furthermore, the operations of method 500 may be omitted in part or performed in any order.
[0056] In operation 502, the IoT device may establish a first wireless connection with an AP. Specifically, the transceiver of the IoT device may perform a full channel scan to detect beacon signals (beacon frames) broadcast by nearby APs. The transceiver of the IoT device may scan a frequency range to search for beacon signals, for example, scanning some or all of the 13 channels of the 2.4 GHz band and / or the 24 channels of the 5 GHz band. When the beacon signal of the target AP is identified, the IoT device negotiates credentials and network parameters using an authentication scheme such as WPA2-PSK and a protocol such as DHCP, as described elsewhere in this disclosure.
[0057] In operation 504, the network parameters discovered through the initial connection, such as SSID, cryptographic key, channel, IP address, gateway / DNS settings, and other configurations, can be stored in non-volatile memory or flash memory of the IoT device to be retained across power cycles. For example, the channel number corresponding to the frequency on which the AP was detected can be saved to speed up scanning during subsequent reconnections.
[0058] In operation 506, after completing the initial network configuration and when there are no active tasks, the IoT device may terminate the wireless connection with the AP and enter a low-power sleep mode. In sleep mode, the IoT device either completely shuts down its transceiver or only occasionally wakes it up to check for incoming wireless packets.
[0059] In operation 508, the IoT device may receive a wake-up trigger indicating that the IoT device now needs to wake up and rejoin the wireless network from sleep mode. The wake-up trigger may originate from a variety of sources. For example, a physical interaction by a user with a sensor connected to the IoT device (e.g., a button, a doorbell) may generate a wake-up trigger. Detection of motion or other environmental stimuli by an IoT sensor may also automatically generate a wake-up trigger to activate the IoT device. As another example, a timed alarm or a scheduled request for the IoT device to provide sensor information to a target server or user device may generate a wake-up trigger. However, these examples are not limiting. Other types of wake-up triggers are possible and within the scope of the present disclosure.
[0060] In operation 510, the IoT device may change from sleep mode to awake mode. Awake mode does not necessarily mean that the IoT device is constantly awake. Instead, during awake mode, the IoT device may check for incoming beacon signals more frequently than in sleep mode and sleep for shorter durations.
[0061] In operation 512, while in the awake mode, the IoT device adjusts the frequency component of the transceiver to match the frequency of the stored channel where the target AP was initially discovered, and monitors at the adjusted frequency / channel. The IoT device monitors the periodic beacon broadcast frames sent by the AP to confirm whether the AP is still available on the channel.
[0062] In operation 514, the IoT device may determine whether a beacon frame is received within a predetermined duration. The predetermined duration may be 100 milliseconds, 200 milliseconds, 500 milliseconds, 1 second, etc. In response to determining that a beacon frame is not received within the duration, the method 500 proceeds to operation 516; otherwise, the method 500 proceeds to operation 518.
[0063] In operation 516, the transceiver of the IoT device may perform a full channel scan as in the first connection. Specifically, the transceiver scans all channels, listening to a fixed interval on each channel to receive a beacon signal.
[0064] In operation 518 , the IoT device may compare the stored SSID with the SSID included in the beacon signal.
[0065] In operation 520 , the IoT device may determine whether the SSIDs match. In response to a determination that the SSIDs do not match, the method 500 returns to operation 512 to continue listening for additional beacon frames; otherwise, the method 500 proceeds to operation 522 .
[0066] In operation 522 , the IoT device may reconnect to the AP using the stored network parameters without requiring re-discovery or re-authentication.
[0067] Figure 6 6 is a flowchart illustrating operations of an IoT device (e.g., IoT device 110, IoT device 112) for handling IP conflicts during a fast reconnect, according to some example embodiments. Method 600 may be embodied in computer-readable instructions for execution by one or more processors, such that the operations of method 600 may be performed in part or in whole by functional components of IoT device 110 (or IoT device 112); therefore, method 600 is described below with reference thereto by way of example. However, it should be understood that at least some operations of method 600 may be deployed on various other hardware configurations besides IoT device 110. Furthermore, the operations of method 600 may be partially omitted or performed in any order.
[0068] In operation 602, the IoT device establishes a second connection with the AP by directly applying the static IP address previously assigned during the first connection. The static IP address is stored in the non-volatile memory of the IoT device. Using the stored IP address allows the network connection to be restored immediately without having to rediscover the network configuration.
[0069] In operation 604, while communicating with the AP using the stored static IP address, the IoT device may detect an address conflict, indicating that the stored IP address is no longer valid. This may be due to a reconfiguration of the AP, such as a reboot. For example, the AP may have reconfigured its DHCP pool after a reboot and assigned the stored address to another device.
[0070] In response to the detected IP conflict, in operation 606 , the IoT device executes Dynamic Host Configuration Protocol (DHCP) to obtain a new IP configuration from the AP, including an updated, non-conflicting network address.
[0071] Using the newly assigned IP address, the IoT device can re-establish a second connection with the AP in operation 608. With the updated IP address, the IoT device can communicate with the AP or other devices through the AP.
[0072] In operation 610, the IoT device updates its locally stored static IP address, overwriting the previous configuration with the newly assigned IP address. This ensures the persistence of valid network credentials for future reconnections. If necessary, the IoT device can utilize DHCP to periodically update its IP configuration.
[0073] Figure 7 7 is a flowchart illustrating operations of an IoT device authenticating with an AP using a stored password during a fast reconnect, according to some example embodiments. Method 700 may be embodied in computer-readable instructions for execution by one or more processors, such that the operations of method 700 may be performed in part or in whole by functional components of IoT device 110 (or IoT device 112); therefore, method 700 is described below with reference thereto by way of example. However, it should be understood that at least some operations of method 700 may be deployed on various other hardware configurations besides IoT device 110. Furthermore, the operations of method 700 may be partially omitted or performed in any order.
[0074] In operation 702, during the first connection, the IoT device may store a password associated with the AP for reuse when reconnecting later. The password can take various forms, depending on the encryption method predetermined by the AP. For example, if WPA2 Personal is used, the IoT device may store an 8-63 character alphanumeric password entered by the user as the password. Alternatively, the IoT device may store a 256-bit pre-shared key (PSK) as the password. The PSK can be generated using the PBKDF2 key derivation function based on the SSID, the length of the SSID, and the password entered by the user. If a WPA2 Enterprise authentication mechanism such as EAP-TLS is supported, the password may include a client certificate and private key pair installed on the IoT device. In some examples, the password may also include an identity, certificate, and authentication protocol selection. Generally, in operation 702, any parameters used to reestablish a secure connection with the AP may be considered part of the password information.
[0075] In operation 704, when attempting to reestablish a second connection, the IoT device sends the previously stored password back to the AP. This may include a pre-shared key, client certificate, identity assertion, or other verification. The AP can receive the password and verify whether the password matches the access rights or is valid.
[0076] In operation 706, if the authentication is successfully completed, indicating that the stored password is still valid, the AP may allow a second connection with the IoT device. The IoT device may then use the stored parameters to re-establish an encrypted connection with the AP.
[0077] Figure 8 800 is a flowchart illustrating the operation of an IoT device in handling a situation where gateway / DNS parameters have changed since an initial connection, according to some example embodiments. Method 800 may be embodied in computer-readable instructions for execution by one or more processors, such that the operations of method 800 may be performed in part or in whole by functional components of IoT device 110 (or IoT device 112); therefore, method 800 is described below with reference thereto by way of example. However, it should be understood that at least some of the operations of method 800 may be deployed on various other hardware configurations besides IoT device 110. Furthermore, the operations of method 800 may be omitted in part or performed in any order.
[0078] In operation 802, the IoT device may store gateway settings and / or DNS settings of the AP during the first connection. The gateway settings and / or DNS settings may be stored in a non-volatile memory of the IoT device along with other network parameters.
[0079] In operation 804, upon reconnection, the IoT device may determine whether the gateway settings or DNS settings have changed since the last connection when initially stored. For example, the AP may have rebooted and reconfigured the gateway / DNS settings. Determining whether the gateway / DNS settings have changed may include sending a data packet using the original settings and checking whether a return data packet can be received. If no return data packet is received, the gateway settings or DNS settings may have changed, and method 800 proceeds to operation 806; otherwise, method 800 proceeds to operation 810.
[0080] In operation 806, the IoT device may perform DHCP to obtain updated gateway / DNS settings from the AP. Operation 806 may be combined with operation 604 so that a single DHCP may be performed to obtain an updated IP address and updated gateway / DNS settings.
[0081] In operation 808 , the IoT device may update the gateway / DNS settings stored in its non-volatile memory, overwriting the previously stored parameters with the newly retrieved parameters.
[0082] In operation 810 , the IoT device uses the updated parameters to establish a connection with a desired target server or device through the AP. Example 1. A method for implementing network reconnection at an Internet of Things (IoT) device, the method comprising: Establishing a first connection with an access point (AP); Storing network parameters of the AP in a memory of the IoT device during the first connection, the network parameters of the AP including a service set identifier (SSID) and a channel; Entering a power saving mode to terminate the first connection with the AP; receiving a wake-up trigger from an IoT sensor communicatively coupled to the IoT device; changing from the power saving mode to the awake mode; listening on the stored channel when operating in the awake mode until a beacon signal is received or a predetermined duration has elapsed; upon receiving the beacon signal, comparing the stored SSID with the SSID contained in the beacon signal; and In response to a comparison that the stored SSID matches the SSID contained in the beacon signal, A second connection is established with the AP based on the beacon signal. 2. The method of Example 1, further comprising: In response to a comparison result that the stored SSID does not match the SSID included in the beacon signal, Continue listening in the stored channel until the next beacon signal is received or the predetermined time duration has elapsed. 3. The method according to example 1 or 2, further comprising: When the predetermined duration is detected to have elapsed, performing a full channel scan to receive a beacon signal transmitted by the AP; and A second connection is established with the AP based on the beacon signal. 4. The method of Example 3, further comprising: The stored channel of the AP is updated based on the second connection. 5. The method of any of Examples 1-4, wherein the network parameters of the AP further include a static IP address, the method further comprising: A second connection is established with the AP using the static IP address. 6. The method of example 5, further comprising: detecting an IP conflict during establishing a second connection with the AP using the static IP address; Execute Dynamic Host Configuration Protocol (DHCP) to obtain a new IP address; and A second connection with the AP is re-established using the new IP address. 7. The method of Example 6, further comprising: The static IP address is updated based on the new IP address. 8. The method of any one of Examples 1-7, wherein the wake-up trigger is generated based on a physical interaction with the IoT sensor. 9. The method of any one of Examples 1-8, further comprising: storing a password associated with the AP in a memory of the IoT device as part of the network parameters during the first connection, Wherein establishing a second connection with the AP based on the beacon signal further comprises: sending the stored password to the AP; and After the AP authenticates the stored password, a second connection with the AP is established. 10. The method of any one of examples 1-9, further comprising: storing gateway settings or Domain Name System (DNS) settings associated with the AP in a memory of the IoT device as part of the network parameters during the first connection; and A connection with an external device is established through the AP using the stored gateway setting or DNS setting. 11. An Internet of Things (IoT) device comprising: processor; and a memory storing instructions that, when executed by the processor, configure the IoT device to: Establishing a first connection with an access point (AP); Storing network parameters of the AP in a memory of the IoT device during the first connection, the network parameters of the access point including a service set identifier (SSID) and a channel; Entering a power saving mode to terminate the first connection with the AP; receiving a wake-up trigger from an IoT sensor communicatively coupled to the IoT device; changing from the power saving mode to the awake mode; listening on the stored channel when operating in the awake mode until a beacon signal is received or a predetermined duration has elapsed; upon receiving the beacon signal, comparing the stored SSID with the SSID contained in the beacon signal; and In response to a comparison that the stored SSID matches the SSID contained in the beacon signal, A second connection is established with the AP based on the beacon signal. 12. The IoT device of example 11, wherein the instructions further configure the IoT device to: In response to a comparison result that the stored SSID does not match the SSID included in the beacon signal, Continue listening in the stored channel until the next beacon signal is received or the predetermined time duration has elapsed. 13. The IoT device of example 11 or 12, wherein the instructions further configure the IoT device to: When the predetermined duration is detected to have elapsed, performing a full channel scan to receive a beacon signal transmitted by the AP; and A second connection is established with the AP based on the beacon signal. 14. The IoT device of example 13, wherein the instructions further configure the IoT device to: The stored channel of the AP is updated based on the second connection. 15. The Internet of Things device of any of Examples 11-14, wherein: The network parameters of the AP also include a static IP address; and The instructions further configure the IoT device to: A second connection is established with the AP using the static IP address. 16. The IoT device of example 15, wherein the instructions further configure the IoT device to: detecting an IP conflict during establishing a second connection with the AP using the static IP address; Execute Dynamic Host Configuration Protocol (DHCP) to obtain a new IP address; and A second connection with the AP is re-established using the new IP address. 17. The IoT device of example 16, wherein the instructions further configure the IoT device to: The static IP address is updated based on the new IP address. 18. The IoT device of any of Examples 11-17, wherein the instructions further configure the IoT device to: storing a password associated with the AP in a memory of the IoT device as part of the network parameters during the first connection, In order to establish a second connection with the AP based on the beacon signal, the instruction further configures the IoT device to: sending the stored password to the AP; and After the AP authenticates the stored password, a second connection with the AP is established. 19. The IoT device of any of Examples 11-18, wherein the instructions further configure the IoT device to: storing gateway settings or Domain Name System (DNS) settings associated with the AP in a memory of the IoT device as part of the network parameters during the first connection; and A connection to an external device is established through the AP using the stored gateway settings or DNS settings. 20. A non-transitory computer-readable storage medium comprising instructions that, when executed by an Internet of Things device, cause the Internet of Things device to: Establishing a first connection with an access point (AP); Storing network parameters of the AP in a memory of the IoT device during the first connection, the network parameters of the access point including a service set identifier (SSID) and a channel; Entering a power saving mode to terminate the first connection with the AP; receiving a wake-up trigger from an IoT sensor communicatively coupled to the IoT device; changing from the power saving mode to the awake mode; listening on the stored channel when operating in the awake mode until a beacon signal is received or a predetermined duration has elapsed; upon receiving the beacon signal, comparing the stored SSID with the SSID contained in the beacon signal; and In response to a comparison that the stored SSID matches the SSID contained in the beacon signal, A second connection is established with the AP based on the beacon signal. in conclusion
[0083] The present disclosure provides systems and methods for quickly reconnecting an Internet of Things (IoT) device to a previously visited access point after waking from a power-saving sleep mode. During the initial connection, the IoT device stores the AP's network parameters, including the service set identifier (SSID), password, PSK value, channel, IP address, gateway settings, and Domain Name System (DNS) settings. Upon receiving a wake-up trigger caused by a user interaction with a connected IoT sensor, the IoT device retrieves the stored parameters and uses them to quickly reauthenticate with the access point, rather than performing a lengthy full channel scan and PSK calculation. Once matched and authenticated with the access point using the unchanged SSID and / or PSK values, the IoT device can immediately restore network connectivity using the stored IP address and gateway / DNS settings. This system resolves potential issues such as IP conflicts, gateway / DNS changes, or access point parameter updates through a detection and reacquisition mechanism. With fast reconnect enabled, IoT devices can quickly send notifications to indoor devices, establish latency-sensitive video calls, retrieve updated content for display, and support other time-critical applications that require fast response times after waking up or restarting.
[0084] The present disclosure potentially offers at least the following advantages: 1. Reducing reconnection latency from over 3 seconds to under 1 second, providing faster wake-up response times. 2. Enhancing the reliability and robustness of IoT systems by automatically handling situations such as IP address conflicts and AP configuration changes. 3. Providing broad compatibility with existing Wi-Fi protocols and network infrastructure without requiring specialized hardware or new network protocols.
Claims
1. A method for implementing network reconnection at an Internet of Things (IoT) device, characterized in that: The method includes: Establishing a first connection with an access point (AP); Storing network parameters of the AP in a memory of the IoT device during the first connection, the network parameters of the AP including a service set identifier (SSID) and a channel; Entering a power saving mode to terminate the first connection with the AP; receiving a wake-up trigger from an IoT sensor communicatively coupled to the IoT device; changing from the power saving mode to the awake mode; listening on the stored channel when operating in the awake mode until a beacon signal is received or a predetermined duration has elapsed; upon receiving the beacon signal, comparing the stored SSID with the SSID contained in the beacon signal; and In response to a comparison that the stored SSID matches the SSID contained in the beacon signal, A second connection is established with the AP based on the beacon signal.
2. The method according to claim 1, characterized in that Further including: In response to a comparison result that the stored SSID does not match the SSID included in the beacon signal, Continue listening in the stored channel until the next beacon signal is received or the predetermined time duration has elapsed.
3. The method according to claim 1, characterized in that Further including: When the predetermined duration is detected to have elapsed, performing a full channel scan to receive a beacon signal transmitted by the AP; as well as A second connection is established with the AP based on the beacon signal.
4. The method according to claim 3, characterized in that Further including: The stored channel of the AP is updated based on the second connection.
5. The method according to claim 1, characterized in that The network parameters of the AP further include a static IP address, and the method further includes: A second connection is established with the AP using the static IP address.
6. The method according to claim 5, characterized in that Further including: detecting an IP conflict during establishing a second connection with the AP using the static IP address; Execute Dynamic Host Configuration Protocol (DHCP) to obtain a new IP address; as well as A second connection with the AP is re-established using the new IP address.
7. The method according to claim 6, characterized in that Further including: The static IP address is updated based on the new IP address.
8. The method according to claim 1, characterized in that A wake-up trigger is generated based on a physical interaction with the IoT sensor.
9. The method according to claim 1, characterized in that Further including: storing a password associated with the AP in a memory of the IoT device as part of the network parameters during the first connection, Wherein establishing a second connection with the AP based on the beacon signal further comprises: sending the stored password to the AP; as well as After the AP authenticates the stored password, a second connection with the AP is established.
10. The method according to claim 1, characterized in that Further including: storing gateway settings or Domain Name System (DNS) settings associated with the AP in a memory of the IoT device as part of the network parameters during the first connection; as well as A connection with an external device is established through the AP using the stored gateway setting or DNS setting.
11. An Internet of Things (IoT) device, characterized in that: include: processor; as well as a memory storing instructions, which, when executed by the processor, configure the IoT device to: Establishing a first connection with an access point (AP); Storing network parameters of the AP in a memory of the IoT device during the first connection, the network parameters of the access point including a service set identifier (SSID) and a channel; Entering a power saving mode to terminate the first connection with the AP; receiving a wake-up trigger from an IoT sensor communicatively coupled to the IoT device; changing from the power saving mode to the awake mode; listening on the stored channel when operating in the awake mode until a beacon signal is received or a predetermined duration has elapsed; upon receiving the beacon signal, comparing the stored SSID with the SSID contained in the beacon signal; as well as In response to a comparison that the stored SSID matches the SSID contained in the beacon signal, A second connection is established with the AP based on the beacon signal.
12. The Internet of Things device according to claim 11, characterized in that The instructions further configure the IoT device to: In response to a comparison result that the stored SSID does not match the SSID included in the beacon signal, Continue listening in the stored channel until the next beacon signal is received or the predetermined time duration has elapsed.
13. The Internet of Things device according to claim 11, characterized in that The instructions further configure the IoT device to: When the predetermined duration is detected to have elapsed, performing a full channel scan to receive a beacon signal transmitted by the AP; and A second connection is established with the AP based on the beacon signal.
14. The Internet of Things device according to claim 13, wherein: The instructions further configure the IoT device to: The stored channel of the AP is updated based on the second connection.
15. The Internet of Things device according to claim 11, wherein: The network parameters of the AP also include a static IP address; and The instructions further configure the IoT device to: A second connection is established with the AP using the static IP address.
16. The Internet of Things device according to claim 15, characterized in that The instructions further configure the IoT device to: detecting an IP conflict during establishing a second connection with the AP using the static IP address; Execute Dynamic Host Configuration Protocol (DHCP) to obtain a new IP address; as well as A second connection with the AP is re-established using the new IP address.
17. The Internet of Things device according to claim 16, wherein: The instructions further configure the IoT device to: The static IP address is updated based on the new IP address.
18. The Internet of Things device according to claim 11, wherein: The instructions further configure the IoT device to: storing a password associated with the AP in a memory of the IoT device as part of the network parameters during the first connection, In order to establish a second connection with the AP based on the beacon signal, the instruction further configures the IoT device to: sending the stored password to the AP; and After the AP authenticates the stored password, a second connection with the AP is established.
19. The Internet of Things device according to claim 11, wherein: The instructions further configure the IoT device to: storing gateway settings or Domain Name System (DNS) settings associated with the AP in a memory of the IoT device as part of the network parameters during the first connection; as well as A connection with an external device is established through the AP using the stored gateway setting or DNS setting.
20. A non-transitory computer-readable storage medium, characterized in that The computer-readable storage medium includes instructions that, when executed by an IoT device, cause the IoT device to: Establishing a first connection with an access point (AP); Storing network parameters of the AP in a memory of the IoT device during the first connection, the network parameters of the access point including a service set identifier (SSID) and a channel; Entering a power saving mode to terminate the first connection with the AP; receiving a wake-up trigger from an IoT sensor communicatively coupled to the IoT device; changing from the power saving mode to the awake mode; listening on the stored channel when operating in the awake mode until a beacon signal is received or a predetermined duration has elapsed; upon receiving the beacon signal, comparing the stored SSID with the SSID contained in the beacon signal; as well as In response to a comparison result that the stored SSID matches the SSID included in the beacon signal, a second connection with the AP is established based on the beacon signal.