Handover management in synchronization system

By receiving predetermined packets and analyzing energy information, the ESL device realizes rapid handover and synchronization without wake-up, solving the problem of synchronization loss and reducing resource consumption and network interference.

CN120457740APending Publication Date: 2025-08-08QUALCOMM INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380090935.0
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2023-01-27
Filing Date
2023-12-01
Publication Date
2025-08-08

AI Technical Summary

Technical Problem

In wireless communication systems, electronic shelf label (ESL) devices tend to lose synchronization with the current access point (AP) when their location changes, resulting in synchronization loss and waste of resources. It is difficult for the prior art to realize handover and resynchronization without waking up the device.

Method used

By receiving and analyzing predetermined packets (such as AUX_SYNC_IND packets), switching decisions are performed, frequency hopping sequence (HFS) scans and sorts candidate APs, and selecting target APs based on energy information for quick switching, avoiding the traditional connection establishment process.

Benefits of technology

It realizes the rapid and efficient handover and resynchronization without waking up the ESL device, reducing resource consumption and network interference.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120457740A_ABST
    Figure CN120457740A_ABST
Patent Text Reader

Abstract

Systems, apparatus, processes, and computer-readable media for wireless communication are disclosed. For example, a process may include determining, by a network entity, a handover candidate, where the handover candidate is a wireless communication device of a plurality of wireless communication devices associated with the network entity. The network entity may transmit channel information and scheduling information associated with the handover candidate to each of the plurality of network devices, and may receive energy information associated with a predetermined packet received by each of the plurality of network devices from each of the plurality of network devices. The network entity may determine a target network device for handover associated with the handover candidate based on the received energy information.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates generally to wireless communications. For example, aspects of the present disclosure relate to switching in a synchronized system including one or more network devices (e.g., access points (APs)) and one or more wireless communication devices (e.g., peripheral devices such as electronic shelf labels (ESLs)). Background Art

[0002] Short-range wireless communication enables wireless communication over relatively short distances (e.g., within 30 meters). For example, BLUETOOTH® is a wireless technology standard for exchanging data over short distances using short-wave ultra-high frequency (UHF) radio waves ranging from 2.4 gigahertz (GHz) to 2.485 GHz.

[0003] BLUETOOTH® Low Energy (BLE) is a form of BLUETOOTH® communication that allows for communication with devices that operate on low power. Such devices may include beacons, which are wireless communication devices that can use low-energy communication technology for positioning, proximity marketing, or other purposes. In some cases, such devices can act as nodes (e.g., relay nodes) of a wireless mesh network, communicating and / or relaying information to a management platform or hub associated with the wireless mesh network. Summary of the Invention

[0004] The following presents a simplified summary of one or more aspects disclosed herein. Therefore, the following summary should not be considered an extensive overview of all contemplated aspects, nor should it be considered to identify key or important elements related to all contemplated aspects or to indicate the scope associated with any particular aspect. Therefore, the sole purpose of the following summary is to present certain concepts related to one or more aspects related to the mechanisms disclosed herein in a simplified form prior to the detailed description presented below.

[0005] Disclosed are systems, methods, apparatus, and computer-readable media for performing wireless communications. According to at least one illustrative example, a method of wireless communications performed at a network entity is provided, the method comprising: determining a handover candidate, wherein the handover candidate is a wireless communication device from a plurality of wireless communication devices associated with the network entity; transmitting channel information and scheduling information associated with the handover candidate to each of the plurality of network devices; receiving energy information associated with a predetermined packet received by each of the plurality of network devices from each of the plurality of network devices; and determining a target network device for handover associated with the handover candidate based on the received energy information.

[0006] In another example, a network entity for wireless communication is provided. The network entity for wireless communication includes at least one memory; and at least one processor coupled to the at least one memory and configured to: determine a handover candidate, wherein the handover candidate is a wireless communication device from a plurality of wireless communication devices associated with the network entity; send channel information and scheduling information associated with the handover candidate to each of the plurality of network devices; receive energy information associated with a predetermined packet received by each of the plurality of network devices from each of the plurality of network devices; and determine a target network device for handover associated with the handover candidate based on the received energy information.

[0007] In another example, a non-transitory computer-readable medium comprising instructions is provided that, when executed by at least one processor, causes the at least one processor to: determine a switching candidate, wherein the switching candidate is a wireless communication device among a plurality of wireless communication devices associated with a network entity; send channel information and scheduling information associated with the switching candidate to each of the plurality of network devices; receive energy information associated with a predetermined packet received by each of the plurality of network devices from each of the plurality of network devices; and determine a target network device for switching associated with the switching candidate based on the received energy information.

[0008] In another example, an apparatus for wireless communication at a wireless communication device is provided. The apparatus includes: means for determining a handover candidate, wherein the handover candidate is a wireless communication device from a plurality of wireless communication devices associated with a network entity; means for sending channel information and scheduling information associated with the handover candidate to each of the plurality of network devices; means for receiving energy information associated with a predetermined packet received by each of the plurality of network devices from each of the plurality of network devices; and means for determining a target network device for handover associated with the handover candidate based on the received energy information.

[0009] In another example, a method of wireless communication performed at a wireless communication device for wireless communication is provided, the method including: determining one or more switching candidate APs for switching the wireless communication device from a serving access point (AP) associated with the wireless communication device; determining a corresponding frequency hopping sequence (HFS) associated with each of the one or more switching candidate APs; determining energy information associated with each of the one or more switching candidate APs based on the corresponding HFS associated with each of the one or more switching candidate APs; and sending a predetermined packet associated with the switching of the wireless communication device to a selected switching candidate AP from the one or more switching candidate APs.

[0010] In another example, a wireless communication device for wireless communication is provided. The wireless communication device includes at least one memory; and at least one processor coupled to the at least one memory and configured to: determine one or more handover candidate APs for handover of the wireless communication device from a serving access point (AP) associated with the wireless communication device; determine a corresponding frequency hopping sequence (HFS) associated with each of the one or more handover candidate APs; determine energy information associated with each of the one or more handover candidate APs based on the corresponding HFS associated with each of the one or more handover candidate APs; and send a predetermined packet associated with the handover of the wireless communication device to a selected handover candidate AP from the one or more handover candidate APs.

[0011] In another example, a non-transitory computer-readable medium comprising instructions is provided that, when executed by at least one processor, causes the at least one processor to: determine one or more handover candidate APs for handover of a wireless communication device from a serving access point (AP) associated with the wireless communication device; determine a corresponding frequency hopping sequence (HFS) associated with each of the one or more handover candidate APs; determine energy information associated with each of the one or more handover candidate APs based on the corresponding HFS associated with each of the one or more handover candidate APs; and send a predetermined packet associated with the handover of the wireless communication device to a selected handover candidate AP from the one or more handover candidate APs.

[0012] In another example, an apparatus for wireless communication at a wireless communication device is provided. The apparatus includes: means for determining one or more handover candidate APs for handover of the wireless communication device from a serving access point (AP) associated with the wireless communication device; means for determining a corresponding frequency hopping sequence (HFS) associated with each of the one or more handover candidate APs; means for determining energy information associated with each of the one or more handover candidate APs based on the corresponding HFS associated with each of the one or more handover candidate APs; and means for sending a predetermined packet associated with the handover of the wireless communication device to a selected handover candidate AP from the one or more handover candidate APs.

[0013] Aspects generally include methods, apparatus, systems, computer program products, non-transitory computer-readable media, user devices, user equipment, wireless communication devices, and / or processing systems substantially as described with reference to and as illustrated in the drawings and description.

[0014] Some aspects include a device having a processor configured to perform one or more operations of any of the methods outlined above. Other aspects include a processing device for use in a device configured with processor-executable instructions for performing the operations of any of the methods outlined above. Other aspects include a non-transitory processor-readable storage medium storing processor-executable instructions configured to cause the processor of the device to perform the operations of any of the methods outlined above. Other aspects include a device having a device module for performing the functions of any of the methods outlined above.

[0015] The foregoing has been briefly outlined rather broadly in order that the following detailed description may be better understood. Additional features and advantages will be described below. The disclosed concepts and specific examples may be readily used as a basis for modifying or designing other structures for achieving the same purposes of the present disclosure. Such equivalent constructions do not depart from the scope of the appended claims. The nature of the concepts disclosed herein, their organization and method of operation, and associated advantages will be better understood from the following description when considered in conjunction with the accompanying drawings. Each of the accompanying drawings is provided for the purpose of illustration and description and not as a limitation of the claims. The foregoing and other features and aspects will become more apparent with reference to the following description, claims, and drawings.

[0016] This summary is not intended to identify key or essential features of the claimed subject matter, nor is it intended to be used in isolation to determine the scope of the claimed subject matter. The subject matter should be understood by reference to appropriate portions of the entire specification of this patent, any or all of the drawings, and each claim. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] The accompanying drawings are presented to assist in describing various aspects of the present disclosure and are provided solely for the purpose of illustrating these aspects and not to limit them. In order to enable a detailed understanding of the above-described features of the present disclosure, reference may be made to a more specific description of the various aspects, some of which are briefly summarized above and are illustrated in the accompanying drawings. However, it is to be noted that the accompanying drawings illustrate only certain typical aspects of the present disclosure and, therefore, should not be considered to limit the scope thereof, as the description may admit of other equally effective aspects. The same reference numerals in different figures may identify the same or similar elements.

[0018] Figure 1 is a diagram illustrating an example environment in which the systems and / or methods described herein may be implemented, according to some examples;

[0019] Figure 2 is a diagram illustrating example components of a device according to some examples;

[0020] Figure 3is a signaling diagram illustrating example communication transmissions according to some examples;

[0021] Figure 4 is a diagram illustrating examples associated with discovery and synchronization between access points according to some examples;

[0022] Figure 5 is a signaling diagram illustrating an example handover based on predetermined packets according to some examples;

[0023] Figure 6 is a signaling diagram illustrating another example handover based on predetermined packets according to some examples;

[0024] Figure 7 is a flow chart illustrating an example of a process for wireless communication at a network entity according to some examples;

[0025] Figure 8 is a flow chart illustrating an example of a process for wireless communication at a wireless communication device according to some examples; and

[0026] Figure 9 is a block diagram illustrating an example of a computing system that may be employed by the disclosed systems and techniques, according to some examples. DETAILED DESCRIPTION

[0027] For illustrative purposes, certain aspects of the present disclosure are provided below. Without departing from the scope of the present disclosure, alternative aspects may be designed. Additionally, well-known elements of the present disclosure may not be described in detail or may be omitted so as not to obscure the relevant details of the present disclosure. As will be apparent to those skilled in the art, some aspects described herein may be applied independently, and some of these aspects may be applied in combination. In the following description, for the purpose of explanation, specific details are set forth so as to provide a thorough understanding of various aspects of the application. However, it will be apparent that various aspects may be practiced without these specific details. The accompanying drawings and description are not intended to be restrictive.

[0028] The following description provides example aspects and is not intended to limit the scope, applicability, or configuration of the present disclosure. Rather, the following description of the example aspects will provide those skilled in the art with an enabling description for implementing the example aspects. It should be understood that various changes may be made to the function and arrangement of elements without departing from the scope of the present application as set forth in the appended claims.

[0029] A system may include one or more wireless communication devices controlled by a network entity. For example, a system including multiple peripheral devices (e.g., an electronic shelf label (ESL) system) may include one or more wireless communication devices (e.g., peripheral devices such as ESLs) controlled by a network entity (e.g., a management entity (ME)) via at least one network device (e.g., an access point (AP)). In one or more examples, to facilitate control by the ME, each peripheral device (e.g., an ESL) may have a wireless connection (e.g., a BLUETOOTH® Low Energy (BLE) connection or other connection) to an AP, which is communicatively connected to the ME (e.g., via the Internet, such as wirelessly, via an Ethernet connection, etc.). In some cases, commands from the ME may be wirelessly transmitted by the AP to the peripheral device (e.g., ESL). Responses or information from the peripheral device may also be received by the AP and provided by the AP to the ME. Each AP may have an associated channel map. A channel map is a list of frequency channels that the AP is to use, or not to use (e.g., in the context of modifying a frequency hopping sequence), for communications (e.g., with the ESL or other peripheral devices). Although examples are described herein using an ESL as an illustrative example of a wireless communication device, a management entity as an example of a network entity, and an access point as an example of a network device, the systems and techniques described herein are applicable to any type of system or network.

[0030] In some examples, an ESL system can be deployed to support and manage ESL equipment in stores (e.g., supermarkets) and other retail spaces. In some examples, the ESL system can be deployed to support and manage ESL equipment in warehouses (e.g., distribution centers) and other industrial spaces. For example, in a store, an ESL can be provided as an electronic label affixed to a store shelf to identify the item and its price located above the label. Each ESL can be implemented with a display (e.g., a liquid crystal display (LCD), an electronic paper (e-paper) display, etc.). The ESL can digitally display the item's name, its product identification number (such as a stock keeping unit (SKU) number), and its price. The ESL can also display an item's barcode, a Quick Response (QR) code, and / or an image (e.g., a picture) of the item. In some examples, each ESL can include a display and a radio or wireless transceiver for communicating with one or more APs and / or MEs included in the ESL system. For example, during operation of the ESL system, the information displayed on the ESL can be periodically updated using periodic advertisements (PAs), as described in more detail below.

[0031] In some examples, multiple electronic tags can be associated with or affixed to the same rail. For example, the rail can be the portion of a shelf that faces forward (e.g., toward an aisle or an individual adjacent to a shelf in an aisle) and to which the electronic tags are affixed. In some examples, each shelf can include its own rail. In other examples, a rail can be affixed to or associated with multiple adjacent shelves. The electronic tags associated with or affixed to a given rail can be provided as ESLs (e.g., each ESL including its own display and / or including its own wireless transceiver). In some cases, the electronic tags associated with or affixed to a given rail can each include a display without a wireless transceiver. For example, an electronic tag can include multiple rail displays (e.g., electronic ink (e-ink) displays) that do not include a dedicated wireless transceiver.

[0032] In some cases, an ESL system may additionally include one or more controllers. For example, a controller may be implemented using an ESL device (e.g., including a wireless transceiver). The ESL device used as a controller may or may not include a display. For example, each given rail may be associated with a corresponding controller. Each ESL associated with or secured to a given rail may be communicatively coupled to a corresponding controller. The controller may include a radio or other wireless transceiver for communicating with an access point (AP) and / or media element (ME) associated with the same ESL system. The controller may also include a serial interface that provides a wired connection to each of the multiple ESLs associated with the controller. For example, an ESL associated with a rail may communicate with an AP and / or media element of the ESL system via its corresponding controller (e.g., the ESL may communicate with the controller via a wired serial interface, which may then communicate wirelessly with the AP or ME). In some examples, the battery capacity associated with a controller may be greater than that associated with a standalone ESL. For example, a controller may have a 3500mAh battery capacity, while a standalone ESL may have a 350mAh battery capacity.

[0033] As previously mentioned, in some examples, the ESL system can be additionally or alternatively used to support and manage ESL devices in warehouses (e.g., distribution) and other industrial spaces. For example, in a warehouse or distribution center, an ESL device can be provided as a tracker that is attached to pallets or various other shipping containers that are moved throughout the warehouse and / or transported in the supply chain. In some examples, the tracker can be provided as a printed active (e.g., battery-powered) Bluetooth® Low Energy (BLE) tag. The BLE tracker can be implemented based on (e.g., can comply with) the ESL protocol. For example, a BLE tracker can be attached to a pallet of goods and used to track the pallet of goods as it moves from a global distribution center (GDC) to a retail store environment.

[0034] In an ESL system, periodic advertisements (PAs) can be utilized to provide regular and predictable payload delivery from a network device (e.g., such as an AP) to one or more wireless communication devices (e.g., such as an ESL). For example, PAs can be used to distribute information from a network device to multiple wireless communication devices, which may be within one or more wireless communication device groups. PAs are typically unidirectional (e.g., one-way transmission), such that PAs are sent only one way from a network device (e.g., an AP) to one or more wireless communication devices (e.g., an ESL). In some examples, information displayed on an ESL can be periodically updated using periodic advertisements (PAs), as described above.

[0035] Periodic Advertisement with Response (PAwR) can be used in ESL systems to provide bidirectionality (e.g., bidirectional transmissions between a central device and one or more peripheral devices). Whenever a network device chooses to transmit (e.g., send) a request to a wireless communication device, synchronized wireless communication devices within a wireless communication device group (e.g., peripheral devices such as ESLs) can be addressed by the network device (e.g., an AP) on a synchronization channel (e.g., a radio frequency (RF) channel between the network device and the wireless communication device). In some cases, as used herein, a synchronization channel refers to a channel on which transmissions are synchronized (in time). For example, a channel may include a frequency over which one or more communications are transmitted. A frequency hopping sequence may be associated with the channel, where the frequency hopping sequence advances at fixed and / or predetermined intervals. The central device (e.g., an AP, ME, etc.) and one or more peripheral devices (e.g., an ESL) can concurrently track the frequency hopping sequence in a predefined frequency hopping pattern (e.g., so that the central device knows when to send a request and the peripheral device knows when to listen for and / or receive a request).

[0036] In some cases, a request sent by a central device to peripheral devices in a particular group may include a PA containing a synchronization message sent by the central device to the peripheral devices in the particular group on a synchronization channel. For example, wireless communication devices within a particular group (e.g., ESL) may wake up at the same PA transmission (e.g., from a powered-off or off state) relative to a particular PAwR train for that group. PA transmissions may include a periodic set of transmissions, which, when applied to PAwR, may be collectively referred to as a PA train or PAwR train. Each transmission in a PA train (or PAwR train) occurs at a precise point in time, with a fixed interval between transmissions. A communication channel (e.g., one of 37 available communication channels) is selected for each transmission, where the communication channel follows a frequency hopping sequence.

[0037] Synchronization between the central device and peripheral devices in a group can be based on the periodicity of the PA. Periodically transmitted messages (e.g., synchronization messages) can include zero, one, or multiple commands (e.g., corresponding operation codes (OpCodes) and parameters associated with each command). If the network device expects a response from a wireless communication device (e.g., a synchronization message from the network device requests a response from a specific wireless communication device), the specific wireless communication device can respond in a specific response time slot, which can be based on the wireless communication device's position within the sequence contained in the synchronization message transmitted by the network device.

[0038] In some cases, one or more ESLs can be physically moved to a new location. For example, one or more ESLs can be moved from one location in a retail store (e.g., a specific shelf or storage area) to a different location in the retail store, a different retail store location, etc. In some examples, store shelves (e.g., with multiple ESLs attached) can be attached to a pod that allows the shelves and the products provided on the shelves to be moved or repositioned. In another example, an ESL provided as a tracker (e.g., such as a printed active BLE tag) can be physically moved during transportation of a pallet (e.g., the pallet to which the tracker is attached) from a distribution center to a retail store location.

[0039] Changing the location of an ESL may cause the ESL to lose synchronization with the current AP and / or ME (e.g., due to being out of range), with which the ESL is associated for wireless communication. Such a loss of synchronization may disrupt the ME's ability to control the ESL and the ESL's ability to report to the ME. In some examples, after determining that a network outage has occurred (e.g., caused by a loss of synchronization), the ESL may perform an onboarding process to reestablish synchronization with the AP. To perform the onboarding process, the ESL may send an advertisement message, receive a connection request from an AP within range in which the advertisement message was detected, and exchange messages with the AP (e.g., including exchanging periodic advertisement synchronization transfer (PAT) information). The onboarding process may consume significant computing resources (e.g., processor resources, memory resources, and / or battery resources, etc.) of the ESL and / or the AP, and frequent advertisements by one or more ESLs may cause spectrum pollution on the advertising channel of the wireless network.

[0040] Currently, (for example, the following about Figure 4 Access point synchronization (described in

[15] ) enables discovery and synchronization of the communication timing of multiple APs within an ESL system. For example, the periodic advertisement (PA) timing used by multiple APs can be synchronized. With AP synchronization, an ESL can access multiple APs. When an ESL moves from one location to another, placing it out of range of its currently associated AP, the ESL can identify an alternative AP within the ESL's range to associate with and jump to the periodic advertisement with multiple responses (PAwMR) string associated with that AP. However, in a typical environment (e.g., a large retail store, warehouse, etc.), APs may be located in a variety of different locations around the environment. In some cases, an ESL accessing multiple APs may have access to each AP's frequency hopping sequence (HFS) and / or be able to derive each AP's HFS from information stored by the ESL (e.g., information communicated to the ESL during the ESL's joining of the AP).

[0041] In some cases, changing the location of an ESL may result in a handoff of the ESL from a first AP to a second AP (e.g., where a first AP is associated with or in communication with the ESL at a first location, and a second AP is associated with or in communication with the ESL at a different, second location). If the location of the ESL changes and a handoff is not performed, the ESL may lose synchronization with the first AP (e.g., may become unsynchronized with the first AP). For example, the ESL may be considered unsynchronized based on the ESL failing to receive six consecutive PAs (e.g., six consecutive AP Sync packets) from the AP. As described above, the ESL may be triggered to wake up (e.g., exit low power (LP) mode) to perform a handoff from the first AP to the second AP and establish synchronization with the second AP. The ESL may also be triggered to wake up or exit LP mode while in an unsynchronized state (e.g., based on the ESL sending an advertisement message and / or performing a join procedure to reestablish synchronization with the AP). Systems and techniques are needed for performing a handoff of an ESL device while maintaining synchronization. Systems and techniques are also needed for performing synchronization of an ESL device with an AP without waking the ESL device from a low power mode. For example, it is necessary to transfer the synchronization of an already synchronized ESL device to an AP with which it is not synchronized, without waking up the ESL device from a low power mode.

[0042] This document describes systems and techniques that can be used to perform handovers of wireless communication devices (e.g., such as electronic shelf label (ESL) devices) without utilizing primary channel measurements. For example, the systems and techniques can be used to perform handovers of ESL devices (e.g., controllers or active BLE trackers (among various other ESL devices)) in an access point (AP) synchronization system. In some cases, the AP synchronization system can be provided as an ESL system.

[0043] In some examples, these systems and techniques can be used to perform a handover of an ESL device (e.g., a controller, active BLE tracker, etc.) without performing multiple connection establishments and / or a single connection establishment with multiple candidate APs for the handover. For example, the AP can perform the handover based on receipt of a predetermined packet sent by the ESL device. In some examples, the AP can perform the handover based on receipt of a secondary synchronization indication (referred to herein as an "AUX_SYNC_IND" packet) sent by the ESL device. In some examples, the secondary synchronization indication sent by the ESL device can be an AUX_SYNC_SUBEVENT_RSP PDU. In some cases, these systems and techniques can be used to enable an ESL device to wake up (e.g., exit low power (LP) mode) in an out-of-order frame. For example, the ESL device can wake up in an out-of-order frame for a group to which it is not assigned. In some cases, the ESL device can wake up in an out-of-order frame (e.g., for a group to which it is not assigned) and can also perform periodic wake-ups in frames for a group to which the ESL device is assigned.

[0044] In some examples, an ESL device can use the systems and techniques to scan for predetermined packets (e.g., AUX_SYNC_IND packets) from an AP whose PA is not synchronized with the ESL device. In some cases, the ESL device can scan for AUX_SYNC_IND packets from an AP whose PA is not synchronized with the ESL device, and can additionally scan for AUX_SYNC_IND packets from an AP whose PA is synchronized with the ESL device.

[0045] In some examples, the systems and techniques can utilize unsolicited, predetermined packets received from an ESL device (e.g., unsolicited AUX_SYNC_IND packets sent by the ESL device). For example, the ESL device can send an unsolicited AUX_SYNC_IND packet in response to an AP (PA) to which the ESL device is not synchronized. Based on the unsolicited AUX_SYNC_IND packet, a fast connection (e.g., handoff) can be performed between the ESL device and an AP to which the ESL device is not synchronized without using a traditional connection establishment process (e.g., which would cause the ESL device to send a CON_ADV to be received by a candidate AP via a traditional channel). For example, a fast connection or handoff between the ESL device and an AP to which the ESL device is not synchronized can be performed based on a fixed group and / or access slot. In some cases, a fast connection or handoff can be performed using a dynamic group and / or access slot based on the load associated with the AP (e.g., determined by a management entity (ME)).

[0046] In another example, handover decision making can be implemented by an ESL device. For example, a rail controller or active BLE tracker can perform handover decision making based on determining one or more issues (or potential issues) associated with the rail controller's or active BLE tracker's currently serving AP. Based on determining one or more issues or potential issues with the currently serving AP, the rail controller or active BLE tracker can perform discovery of potential candidate APs for handover. For example, the rail controller or active BLE tracker can determine an AUX_SYNC_IND frequency hopping sequence (HFS), which can include a set of indices that the rail controller or active BLE tracker can use to predict the channels used by any available APs in a frame. In some cases, the AUX_SYNC_IND HFS can be determined based on a join payload received from a management entity (ME). For example, for each handover candidate AP, the ESL device (e.g., rail controller or active BLE tracker) can receive a join payload that includes channel map information, access address information, and event counter information.

[0047] Based on the HFS included in the join payload, the ESL device may begin scanning at a predetermined rate on various handover candidate APs. For example, each scan may be associated with a corresponding handover candidate AP from a plurality of handover candidate APs. In some cases, the ESL device may determine energy information associated with each of up to 37 data channels. In some examples, the energy information determined by the ESL device may be received signal strength indicator (RSSI) information. The handover candidate APs may be ranked based on a priority order and / or may be ranked based on a handover algorithm to determine one or more handover candidate APs for selection by the ESL device.

[0048] Additional aspects of the disclosure are described with reference to the accompanying drawings.

[0049] Figure 1 is a diagram of an example environment 100 in which the systems and / or methods described herein may be implemented. Figure 1 As shown, environment 100 may include at least one access point (AP) 110, at least one wireless communication device 120, a management entity (ME) 130, and a network 140. The devices of environment 100 may be interconnected via wired connections, wireless connections, or a combination of wired and wireless connections.

[0050] As described elsewhere herein, the access point 110 may include one or more devices capable of receiving, generating, storing, processing, providing, and / or routing information associated with access point synchronization and / or handover. The access point 110 may include a communication device and / or a computing device. The access point 110 may be configured to transmit beacons (e.g., BLE beacons) and to scan for and locate other devices (e.g., other devices communicating using the BLE protocol).

[0051] As described elsewhere herein, the wireless communication device 120 may include one or more devices capable of receiving, generating, storing, processing, and / or providing information associated with access point synchronization and / or handover. The wireless communication device 120 may include a communication device and / or a computing device. In some aspects, the wireless communication device 120 may be, may include, or may be included in an electronic shelf label (ESL).

[0052] As described elsewhere herein, management entity 130 comprises one or more devices capable of receiving, generating, storing, processing, providing, and / or routing information associated with access point synchronization and / or handover. Management entity 130 may comprise a communication device and / or a computing device. For example, management entity 130 may comprise a server, such as an application server, client server, web server, database server, host server, proxy server, virtual server (e.g., executed on computing hardware), or a server in a cloud computing system. In some aspects, management entity 130 comprises computing hardware used in a cloud computing environment. Management entity 130 may provide control for a system (e.g., an ESL system) including access point 110, wireless communication device 120, and / or device 130. Access point 110 may be communicatively coupled to management entity 130 via a network (not shown), such as the Internet.

[0053] Network 140 may include one or more wireless networks. For example, network 140 may include a personal area network (eg, a Bluetooth network). Network 140 enables communication between devices in environment 100.

[0054] Figure 1 The number and arrangement of devices and networks shown are provided as examples. Figure 1 There may be additional devices and / or networks, fewer devices and / or networks, different devices and / or networks, or differently arranged devices and / or networks than those shown in FIG. Figure 1 Two or more of the devices shown may be implemented in a single device, or Figure 1 The single device shown may be implemented as multiple distributed devices. Additionally or alternatively, a set of devices (eg, one or more devices) of environment 100 may perform one or more functions described as being performed by another set of devices of environment 100.

[0055] Figure 2is a diagram illustrating example components of a device 200 according to the present disclosure. The device 200 may correspond to the access point 110, the wireless communication device 120, and / or the management entity 130. In some aspects, the access point 110, the wireless communication device 120, and / or the management entity 130 may include one or more devices 200 and / or one or more components of the device 200. Figure 2 As shown, device 200 may include a bus 205 , a processor 210 , a memory 215 , a storage component 220 , an input component 225 , an output component 230 , and / or a communication component 235 .

[0056] The bus 205 may include components that permit communication between components of the device 200. The processor 210 may be implemented in hardware, firmware, or a combination of hardware and software. The processor 210 may be a central processing unit (CPU), a graphics processing unit (GPU), an accelerated processing unit (APU), a microprocessor, a microcontroller, a digital signal processor (DSP), a field programmable gate array (FPGA), an application-specific integrated circuit (ASIC), or other types of processing components. In some aspects, the processor 210 may include one or more processors that can be programmed to perform functions. The memory 215 may include random access memory (RAM), read-only memory (ROM), and / or another type of dynamic or static storage device (e.g., flash memory, magnetic memory, and / or optical memory) that stores information and / or instructions for use by the processor 210.

[0057] The storage component 220 may store information and / or software related to the operation and use of the device 200. For example, the storage component 220 may include a hard disk (e.g., a magnetic disk, an optical disk, a magneto-optical disk, and / or a solid-state disk), a compact disk (CD), a digital versatile disk (DVD), a floppy disk, a magnetic cassette, a magnetic tape, and / or another type of non-transitory computer-readable medium and a corresponding drive.

[0058] Input components 225 may include components that permit device 200 to receive information, such as via user input (e.g., a touch screen display, a keyboard, a keypad, a mouse, buttons, switches, and / or a microphone). Additionally or alternatively, input components 225 may include components for determining the location or position of device 200 (e.g., a global positioning system (GPS) component or a global navigation satellite system (GNSS) component) and / or sensors for sensing information (e.g., an accelerometer, a gyroscope, an actuator, or another type of location or environmental sensor). Output components 230 may include components that provide output information from device 200 (e.g., a display, a speaker, a tactile feedback component, and / or an audio or visual indicator).

[0059] The communication component 235 may include one or more transceiver-like components (e.g., a transceiver and / or a separate receiver and transmitter) that enable the device 200 to communicate with other devices, such as via a wired connection, a wireless connection, or a combination of wired and wireless connections. The communication component 235 may allow the device 200 to receive information from another device and / or provide information to another device. For example, the communication component 235 may include an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, a radio frequency interface, a universal serial bus (USB) interface, a wireless local area interface (e.g., a Wi-Fi interface or a BLE interface), and / or a cellular network interface.

[0060] The communication component 235 may include one or more antennas for receiving wireless radio frequency (RF) signals transmitted from one or more other devices, cloud networks, etc. The antenna may be a single antenna or an antenna array (e.g., a phased array antenna) that can facilitate simultaneous transmit and receive functions. The antenna may be an omnidirectional antenna so that signals can be received from all directions and signals can be transmitted in all directions. The wireless signals may be transmitted via a wireless network. The wireless network may be any wireless network, such as a cellular or telecommunications network (e.g., 3G, 4G, 5G, etc.), a wireless local area network (e.g., a WiFi network), a Bluetooth TM network and / or other networks.

[0061] One or more transceiver-like components (e.g., a wireless transceiver) of the communication component 235 may include an RF front end, which includes one or more components such as amplifiers, mixers for downconverting signals (also known as signal multipliers), frequency synthesizers (also known as oscillators) that provide signals to the mixers, baseband filters, analog-to-digital converters (ADCs), one or more power amplifiers, etc. The RF front end may generally handle the selection and conversion of wireless signals to baseband or an intermediate frequency, and may convert the RF signals to the digital domain.

[0062] In some cases, a CODEC (codec) may be implemented (e.g., by processor 210) to encode and / or decode data transmitted and / or received using one or more wireless transceivers. In some cases, encryption-decryption may be implemented (e.g., by processor 210) to encrypt and / or decrypt data transmitted and / or received by one or more wireless transceivers (e.g., according to the Advanced Encryption Standard (AES) and / or the Data Encryption Standard (DES)).

[0063] In some aspects, device 200 may represent an ESL. In addition to the components described above, the ESL may also include a battery. In some aspects, the output component 230 of the ESL may be an electronic paper (e-paper) display or a liquid crystal display (LCD).

[0064] Device 200 can perform one or more of the processes described herein. Device 200 can perform these processes based on processor 210 executing software instructions stored by a non-transitory computer-readable medium such as memory 215 and / or storage component 220. Computer-readable media is defined herein as a non-transitory memory device. A memory device includes memory space within a single physical storage device or memory space distributed across multiple physical storage devices.

[0065] The software instructions may be read into the memory 215 and / or storage component 220 from another computer-readable medium or from another device via the communication component 235. When executed, the software instructions stored in the memory 215 and / or storage component 220 may cause the processor 210 to perform one or more processes described herein. Additionally or alternatively, hard-wired circuitry may be used in place of or in combination with the software instructions to perform one or more processes described herein. Thus, the aspects described herein are not limited to any specific combination of hardware circuitry and software.

[0066] Figure 2 The number and arrangement of components shown in are provided as examples. Figure 2 , the device 200 may include additional components, fewer components, different components, or components arranged differently than shown in FIG. Additionally or alternatively, a set of components (e.g., one or more components) of the device 200 may perform one or more functions described as being performed by another set of components of the device 200.

[0067] Figure 3 is a signal timing diagram illustrating a portion of the communication between an access point (eg, access point 110) and a wireless communication device 120 (eg, ESL). Figure 1 , Figure 3 The signal sequence shown can be represented by Figure 1 The communication connection, access point 110 and / or wireless communication device 120 are implemented in one or more of the following embodiments.

[0068] Figure 3 Devices (e.g., device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e) can access the Figure 1 305d and 305e) can each receive a periodic advertisement (PA) during a scan period 310. The scan period 310 can occur at regularly scheduled intervals and can repeat periodically so that devices (e.g., device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e) can wake up to scan for messages during the repeating scan period 310. Figure 1The access point 110 of FIG. 110 may provide periodic advertisements (PAs) to devices (eg, device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e) via broadcast or multicast during the scanning period 310. Figure 1 For access point 110, scanning period 310 may be its main transmission period. In some cases, scanning period 310 may not be a fixed time because the access point (e.g., Figure 1 The access point 110 may transmit data of varying lengths from the start of the scanning period 310 .

[0069] The transmission may include multiple advertisements in a string. One or more portions of the advertisement may be directed to one or more of the devices (e.g., device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e). The devices (e.g., device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e) may decode or filter messages intended for each specific device and sent during reception by all devices. In this manner, the devices (e.g., device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e) may be reprogrammed, updated, and / or transmitted from an access point (e.g., Figure 1 access point 110) or through an access point (e.g., Figure 1 access point 110) from another device (e.g., Figure 1 The request is relayed by the management entity 1 30). Figure 1 A periodic advertisement (PA) from the access point 110 may set a response period for one or more devices (eg, device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e).

[0070] As shown, devices (e.g., device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e) are each allocated response periods 320, 322, 324, 326, 328 in the time following the scan period 310. The first response period 320 may begin after an idle time 315 following the scan period 310, which is long enough to provide the transmitter device with an opportunity to engage in other Bluetooth-related activities. The allocated response periods may also be limited to or specify a specific frequency of the channel to be responded to. For example, in Figure 3, device 1 305a is allocated response period 320, device 2 305b is allocated response period 322, device 3 305c is allocated response period 324, device 4 305d is allocated response period 326, and device 5 305e is allocated response period 328. An access point (e.g., Figure 1 The access point 110 may store attributes of devices (e.g., device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e), including whether the devices are capable of transmitting or responding. PA signaling followed by a response may be referred to as periodic advertisement with multiple responses (PAwMR).

[0071] For example, device 3 305c (e.g., Figure 1 The wireless communication device 120 may be an ESL and may scan for a wireless connection from an access point (eg, Figure 1 The PA received at device 3 305c may include a specified start time for the response period 324 or may include a schedule of response start times for devices including device 3 305c. Device 3 305c may provide a response to the access point (e.g., Figure 1 The response of device 3 305c may include an acknowledgement, a status code, and / or other information such as battery life, received signal strength, and / or an error notification. The response of device 3 305c may include an acknowledgement, a status code, and / or other information such as battery life, received signal strength, and / or an error notification. Figure 1 The response may include a packet with a header and may conform to any Bluetooth protocol. The response may be sent to an access point (e.g., an access point 110) in a data channel of the Bluetooth protocol. Figure 1 The PA and responses from all devices (eg, device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e) may use a channel of the Bluetooth protocol.

[0072] A device that has been allocated a response period (e.g., device 5 305e) may not respond and may determine that it has nothing to signal. For example, a device (e.g., device 1 305a, device 2 305b, device 3 305c, device 4 305d, and device 5 305e) may determine what response, if any, is required and may or may not respond to a request from an access point (e.g., Figure 1 Response time periods 320, 322, 324, 326, 328 may be allocated based on a request for such time periods in the open transmission time transmitted to an access point (e.g., Figure 1 The access point 110 can be based on the access point (e.g., Figure 1 The access point 110) has requested which devices to transmit data or acknowledgements to allocate response periods 320, 322, 324, 326, 328. The PA messages and responses may be on a frequency hopping time synchronization channel and / or an extension of the Bluetooth advertising channel.

[0073] Figure 4 is shown with access points (e.g., Figure 1 10). As shown, example 300 includes access points (e.g., Figure 1 Access point 110), shown as AP on transmission timeline 400 i 410 and AP j 420. Access Point AP i 410 and AP j 420 can be communicatively connected to a management entity (e.g., Figure 1 In some aspects, the access point and / or management entity may be included in a wireless communication system, such as an ESL system. The wireless communication system may use wireless communication technology, such as BLE.

[0074] As used herein, "transmission timing" or "periodic advertisement timing" may refer to the timing or schedule at which a device (e.g., an access point) transmits communications or periodic advertisements. For example, two devices using (e.g., synchronized to) the same periodic advertisement timing may concurrently transmit periodic advertisements.

[0075] In one or more examples, during operation, a first access point AP1 (eg, AP i 410) may send (e.g., broadcast) a periodic advertisement (e.g., PAs 430a and 430b), such as a series of periodic advertisements. The periodic advertisement may be a unidirectional broadcast message. The first access point AP1 may send the periodic advertisement according to the PAwMR schedule. In addition, the first access point AP1 may use a first frequency hopping sequence (HFS) to send the periodic advertisement. The first HFS may be an HFS configured for the first access point AP1 (e.g., if the first access point AP1 is not a follower of another access point), or the first HFS may be different from a reference HFS based at least in part on a first index value associated with (e.g., selected by) the first access point AP1.

[0076] The second access point AP2 (e.g., AP j420) can detect at least one periodic advertisement broadcast from the first access point AP1 (e.g., by scanning known channels on which the first access point AP1 transmits and / or by scanning the entire frequency band or taking a snapshot of the entire frequency band). That is, the second access point AP2 can discover the first access point AP1. In some aspects, the second access point AP2 can listen on one or more advertising channels (e.g., legacy advertising channels) to detect information that enables the second access point AP2 to follow and synchronize with the first access point AP1, thereby enabling the second access point AP2 to monitor for periodic advertisements (e.g., PAs 430a, 430b). In some aspects, before the second access point AP2 initiates the transmission of periodic advertisements, the second access point AP2 can monitor (e.g., listen) and detect periodic advertisements (this can be referred to as a "detect first, then act" strategy). For example, during a boot sequence during startup (or restart) of the second access point AP2, the second access point AP2 can listen for periodic advertisements from other access points before initiating the transmission of periodic advertisements. In some aspects, an access point (eg, an isolated access point), such as the second access point AP2, may periodically listen for periodic advertisements from neighboring access points.

[0077] Upon detecting periodic advertisements from the first access point AP1, the second access point AP2 may send, and the first access point AP1 may receive, a message (e.g., an unsolicited message) to initiate a connection between the first access point AP1 and the second access point AP2. Following the connection, or as part of the connection process, the first access point AP1 may send, and the second access point AP2 may receive, a synchronization message. The synchronization message may identify the periodic advertisement timing used by the first access point AP1 (e.g., PAwMR scheduling). For example, the synchronization message may include PAST information indicating the periodic advertisement timing used by the first access point AP1 (e.g., by indicating the time offset used by the first access point AP1). In some cases, the PAST information may also include values for all parameters required for HFS calculation and a channel map. Additionally or alternatively, the synchronization message may identify the first HFS used by the first access point AP1. For example, the PAST information may also indicate a reference HFS used by the first access point AP1. The first HFS may be the reference HFS or an HFS that is offset from the reference HFS (e.g., frequency shuffled). For example, if the HFS deviates from the reference HFS, then the channel index of the HFS may differ from the channel index of the reference HFS at all frequency instances in the frequency sequence. In some aspects, the synchronization message may identify the first HFS to be used by the first access point AP1 by indicating a first index value associated with the first access point AP1 (e.g., the first HFS may be determined using the first index value and the reference HFS). For example, the synchronization message may indicate a set of index values that includes the first index value and / or one or more additional index values associated with additional access points known to the first access point AP1. In some aspects, the set of index values may include an index value for the second access point AP2 that indicates the HFS to be used by the second access point AP2.

[0078] The exchange of periodic advertisement timing information (e.g., PAST information) enables the second access point AP2 to synchronize with the first access point AP1. Thus, in the same manner, multiple additional access points can synchronize to the same periodic advertisement timing. For example, the third access point AP3 can also synchronize with the first access point AP1, and the fourth access point AP4 can synchronize with the third access point AP3, thereby causing the fourth access point AP4 to synchronize with the second access point AP2 through transfer synchronization. In this way, multiple access points can become time-synchronized with each other.

[0079] As indicated by reference numeral 455, upon receiving the synchronization message, the second access point AP2 may transmit periodic advertisements (e.g., PAs 440a, 440b) synchronized with the periodic advertisement timing (e.g., PAwMR scheduling) used by the first access point AP1, such as transmissions on a data channel. In this manner, the first access point AP1 and the second access point AP2 may concurrently transmit periodic advertisements. However, the second access point AP2 may transmit periodic advertisements based on a second High Frequency Scaling (HFS). This second HFS may be offset from (e.g., different from) the first HFS or reference HFS used by the first access point AP1. In other words, each access point (e.g., with physically overlapping coverage areas) may use a different HFS than any other access point. By using different HFSs, interference between access points can be avoided despite the access points being time-synchronized. Consequently, the probability of any two HFSs from different APs selecting the same channel at the same time should be low.

[0080] The second HFS may be based at least in part on a second index value associated with the second access point AP2 (e.g., different from the first index value). For example, each access point (e.g., having physically overlapping coverage areas) may be associated with an index value that is different from any other access point. Thus, based at least in part on the set of index values identified to the second access point AP2, the second access point AP2 may select a second index value to implement an HFS that is orthogonal to each other HFS currently in use (e.g., within the radio frequency range of the second access point AP2). In some aspects, the second HFS may be offset relative to the first HFS or a reference HFS based at least in part on the second index value. For example, the second HFS may be determined according to Equation 1 below:

[0081] HFS i = (HFS0 + index i ) mod 37 Equation 1

[0082] Among them, HFS0 is the reference HFS, HFS i Is the HFS being determined, and index i is an index value used to determine HFS. Because the BLE system uses 37 data channels, Equation 1 uses a value of 37 for the modulo operation. However, a different value for the modulo operation (e.g., corresponding to the number of channels) may be used in other systems.

[0083] In some aspects, an index value may indicate an HFS in a manner different from that described above. That is, an index value may be any means of identifying a frequency hopping channel (or "channel selection") sequence. For example, each access point and each wireless communication device may be configured with a set of HFSs, and an index value may be mapped to a specific HFS in the set of HFSs. Thus, as described herein, an indication of a set of index values may refer to an indication of all active (e.g., in-use) HFSs in the set of HFSs.

[0084] In some aspects, the first access point AP1 may send and one or more wireless communication devices (eg, Figure 1 A wireless communication device (e.g., wireless communication device 120) may receive information (e.g., PAST information) identifying the periodic advertisement timing used by the first access point AP1. For example, the first access point AP1 may transmit information related to joining a wireless communication device to the first access point AP1. In some aspects, a second access point AP2 may transmit, and one or more wireless communication devices (e.g., wireless communication device 120) may receive, information (e.g., PAST information) identifying the periodic advertisement timing used by the second access point AP2. For example, the second access point AP2 may transmit the information to a wireless communication device that has already joined the second access point AP2, or the second access point AP2 may cause the wireless communication device to repeat a joining process with the second access point AP2, wherein the information is transmitted during the joining process.

[0085] In some aspects, the first access point API may transmit (eg, via a broadcast) and one or more wireless communication devices synchronized with the first access point API (eg, Figure 1 The wireless communication device 120 may receive information identifying a set of (e.g., one or more) index values indicating an HFS used by one or more access points. For example, the set of index values may include a first index value associated with a first access point AP1, a second index value associated with a second access point AP2, and / or one or more additional index values associated with additional access points known to the first access point AP1. Similarly, in some aspects, the second access point AP2 may transmit (e.g., via a broadcast) and synchronize one or more wireless communication devices (e.g., Figure 1The wireless communication device 120 may receive information identifying a set of (e.g., one or more) index values indicating a HFS used by one or more access points. For example, the one or more index values may include a first index value associated with the first access point AP1, a second index value associated with the second access point AP2, and / or one or more additional index values associated with additional access points known to the second access point AP2. In some aspects, the first access point AP1 and / or the first access point AP1 may receive information (e.g., valid indexes) indicating the index values in use for the one or more additional access points from the management entity.

[0086] Over time (e.g., due to clock drift), the periodic advertisement timing used by the first access point AP1 and the second access point AP2 may become misaligned. As shown at reference numeral 450, the second access point AP2 may monitor (e.g., occasionally) for additional periodic advertisements from the first access point AP1 during monitoring opportunities. In other words, the second access point AP2 may sacrifice periodic advertisement transmissions (e.g., to a specific group of wireless communication devices) in order to monitor (e.g., listen) for additional periodic advertisements from the first access point AP1. In some aspects, the monitoring opportunities at which the second access point AP2 monitors for the additional periodic advertisements may be based at least in part on expected clock drift between the first access point AP1 and the second access point AP2. Based on the timing of the additional periodic advertisements, the periodic advertisement timing may be realigned between the first access point AP1 and the second access point AP2. For example, the second access point AP2 may realign with the periodic advertisement timing used by the first access point AP1 based at least in part on the timing of the additional periodic advertisements (e.g., based at least in part on a difference between the actual timing of the additional periodic advertisements and the expected timing of the additional periodic advertisements).

[0087] In some examples, an access point that uses a transmission timing or schedule (e.g., a periodic advertising timing or schedule) followed by another access point may be referred to as a "leader access point," and an access point that synchronizes its transmission timing or schedule with that of another access point may be referred to as a "follower access point." In some cases, an access point can be both a leader access point and a follower access point. For example, a second access point may follow the transmission timing or schedule used by a first access point, and a third access point may follow the transmission timing or schedule used by the second access point. Thus, in this example, the second access point is both a leader access point and a follower access point.

[0088] As indicated above, Figure 4 are provided as examples. Other examples may differ from those regarding Figure 4 described.

[0089] Some examples of synchronization at an access point (AP) (e.g., such as the one above regarding Figure 4 In some examples, such as those described above, when an ESL moves from one location to another in an environment, putting the ESL out of range of its currently associated AP, the ESL can identify an alternative AP within the ESL's range to associate with. In some cases, the ESL may be able to relatively quickly join the PAwMR string associated with the identified AP. In some examples, such as in a large retail environment with multiple APs, the handoff of an ESL device (e.g., a rail controller, an active BLE tracker, etc.) from a first AP to a second AP may be slowed or prevented based on the handoff being performed based on measurements on a primary channel (e.g., also known as a legacy channel). For example, the primary channel may be crowded with various other wireless transmissions (e.g., non-ESL beacons) that may interfere with the ability of the AP and the ESL device to perform handoff operations. In some examples, it may also be difficult for the ESL device to perform multiple simultaneous received signal strength indicator (RSSI) measurements for multiple APs. For example, when the data channels between the ESL device and multiple access points experience channel contention, performing simultaneous RSSI measurements is difficult. In some cases, RSSI measurements for multiple access points may experience lags or delays, making it impossible to perform RSSI measurements simultaneously. In other examples, a prolonged or extended handover of an ESL device from a current AP associated with the ESL device to an identified AP selected from a plurality of handover candidate APs may be associated with increased power consumption. For example, when the ESL device must remain awake (e.g., not in low power (LP) mode) during measurement, handover decision making, and / or synchronization operations, the increased power consumption may consume a relatively large percentage of available battery power at the ESL device. In some examples, a handover of the ESL device from the current AP to the identified AP selected from a plurality of handover candidate APs may be performed based on multiple connection establishments, wherein a new connection request is transmitted by the ESL device to the identified AP after a handover decision is made (e.g., after a management entity (ME) makes the handover decision).

[0090] As previously mentioned, the systems and techniques described herein can be used to perform handovers for wireless communication devices (e.g., such as electronic shelf labels (ESL) devices) without utilizing primary channel measurements. For example, the systems and techniques can be used to perform handovers for ESL devices (e.g., rail controllers or active BLE trackers, among various other ESL devices) in an access point (AP) synchronization system. In some cases, the AP synchronization system can be provided as an ESL system. In some examples, the systems and techniques can be used to perform handovers for ESL devices (e.g., rail controllers, active BLE trackers, etc.) without establishing multiple connections with multiple candidate APs for handover. For example, the AP can perform handovers based on receipt of a predetermined packet transmitted by the ESL device. In some examples, the AP can perform handovers based on receipt of an AUX_SYNC_IND packet transmitted by the ESL device. In some cases, the systems and techniques can be used to enable ESL devices to wake up (e.g., exit low power (LP) mode) in out-of-order frames. For example, an ESL device can wake up in an out-of-order frame on a group to which it is not assigned. In some cases, an ESL device may wake up in out-of-order frames (eg, on a group to which the ESL device is not assigned), and may additionally perform periodic wake-ups in frames on a group to which the ESL device is assigned.

[0091] In some examples, an ESL device can use these systems and techniques to scan for predetermined packets (e.g., AUX_SYNC_IND packets) from an AP whose PA is not synchronized with the ESL device. In some cases, the ESL device can scan for AUX_SYNC_IND packets from an AP whose PA is not synchronized with the ESL device, and can additionally scan for AUX_SYNC_IND packets from an AP whose PA is synchronized with the ESL device. In some examples, these systems and techniques can utilize unsolicited predetermined packets (e.g., unsolicited AUX_SYNC_IND packets). For example, the ESL device can send an unsolicited AUX_SYNC_IND packet in response to an AP PA to which the ESL device is not synchronized. Based on the unsolicited AUX_SYNC_IND packet, a fast connection (e.g., handover) can be performed between the ESL device and an AP to which the ESL device is not synchronized without using traditional connection establishment procedures. For example, a fast connection or handover between the ESL device and an AP to which the ESL device is not synchronized can be performed based on a fixed group and / or access time slot. In some cases, fast connection or handover may be performed using dynamic groups and / or access slots based on the load associated with the AP (eg, determined by a management entity (ME)), as will be described in more depth below.

[0092] Figure 5FIG2 is a signaling diagram illustrating an example handover 500 of an ESL device (e.g., a rail controller, an active BLE tracker, etc.) from a first AP to a second AP. The example handover 500 can be performed in an ESL system. In one illustrative example, the ESL device handover 500 can be performed based on a predetermined packet, such as an AUX_SYNC_IND packet. In some aspects, the ESL device handover 500 can be performed based on a handover decision determined at an AP and / or ME included in the ESL system.

[0093] For example, an ESL system may include a first AP 502 (eg, depicted as AP1, also referred to as a "serving AP"), a second AP 504 (eg, depicted as AP2), and one or more additional APs (eg, depicted as APs 504 and 505). N ). In some cases, the second AP 2504 and the additional AP N 508 may each be referred to as a "target AP." In one illustrative example, multiple APs (eg, AP1 502, AP2 504, additional APs) included in the ESL system may be N 508) can be synchronized with each other. For example, an ESL system including multiple APs can be a fully synchronized network.

[0094] The ESL system associated with the example handover 500 may additionally include a handover candidate 510. The handover candidate 510 may be an ESL device identified as requiring a handover and / or may be an ESL device for which a handover operation has been triggered or is about to be performed. For example, the handover candidate 510 may be a rail controller that has moved and needs to be handed over from a current serving AP (e.g., serving AP1 502 that was most recently associated with or serving the handover candidate 510) to one of the target APs 504, 508. In other examples, the handover candidate 510 may be an active BLE tracker that has moved and needs to be handed over from a current serving AP (e.g., serving AP1 502) to one of the target APs 504, 508.

[0095] In one illustrative example, the handover candidate 510 may be identified or determined by a management entity (ME) associated with the ESL system. Figure 5 As depicted, at block 522, the ME may identify a handover candidate 510. In some cases, the ME may identify the handover candidate 510 as an ESL device included in a plurality of ESL devices associated with the same ESL system or ESL network as the ME. As previously described, the ME may identify the handover candidate 510 as an ESL device that requires handover, such as a rail controller or an active BLE tracker.

[0096] For example, the ME may determine that the handover candidate 510 needs to be handed over from its current serving AP1 502 to a target AP that is different from the current serving AP1 502. In some aspects, the handover candidate 510 may be identified or determined based on RSSI information and / or various other sensor state information associated with one or more of the handover candidate 510 and the current serving AP1 502. For example, the handover candidate 510 may be identified based on (e.g., by the ME) determining that the RSSI information and / or sensor state information associated with the current serving AP1 502 and the handover candidate 510 is greater than one or more predetermined thresholds, less than one or more predetermined thresholds, etc. In some examples, the RSSI information and / or sensor state information associated with the current serving AP1 502 and the handover candidate 510 may be determined by one or more of the APs (e.g., serving AP1 502, target AP2 504, target AP2 505, etc.). N 508) etc. are provided to the ME.

[0097] In some examples, based on the ME identifying the handover candidate 510 at block 522, the ME may obtain information associated with the handover candidate 510. For example, the ME may obtain the information associated with the handover candidate 510 from the current serving AP1 502 associated with the handover candidate 510. In some cases, the information associated with the handover candidate 510 may include channel map information, access address information, current PA (periodic advertisement) event counter information, and group ID information. For example, the serving AP1 502 may send (e.g., to the ME) information indicating {channel map, access address, current paEventCounter, group_id} associated with the handover candidate 510 and / or wireless communication between the serving AP1 502 and the handover candidate 510.

[0098] The ME may notify each of the plurality of APs associated with the ESL system of information associated with the handover candidate 510. For example, at block 524, the ME may notify the target AP2 504 of the handover scan schedule information, and at block 528, the ME may notify the target AP N508 notifies the ME of handover scan scheduling information, etc. In some aspects, the ME may notify each of the multiple APs (e.g., each target AP) of the same handover scan scheduling information. Alternatively, the ME may simultaneously notify each of the multiple APs of the handover scan scheduling information. In one illustrative example, the handover scan scheduling information may include the same {channel_map, access address, current paEventCounter, group_id} information previously obtained by the ME from the currently serving AP 1502. The handover scan scheduling information may additionally include time-to-trigger (TTT) information, such that the handover scan scheduling information includes {channel_map, access address, current paEventCounter, group_id, TTT} information.

[0099] The TTT information may indicate the total amount of scans that each AP (e.g., among the plurality of APs) will schedule and / or perform for handover candidate 510. For example, the TTT information included in the handover scan scheduling information provided to each AP (e.g., at blocks 524 and 528) may indicate the number of scans to be scheduled by each AP, where the APs concurrently perform scheduled scans (e.g., based on the APs included in a fully synchronized ESL network). In some examples, the TTT information may be a time value indicating a time period or time window during which each AP will schedule or perform simultaneous (e.g., concurrent) scans for handover candidate 510. For example, the ESL system and the plurality of APs 502, 504, 508 may be associated with a predetermined time window size, such as 1.6 seconds. Based on the TTT information indicating the total time (e.g., number of seconds) during which scans will be scheduled and performed for handover candidate 510, each AP may determine the number of scans to perform and / or may determine timing information for performing each scheduled scan concurrently with the remaining APs. For example, each AP may perform one scan per 1.6 second time window, where each scan is performed at the same relative time slot (e.g., the same relative time offset for start and / or end) of the 1.6 second time window. As shown, the first time window may begin at time T, the second time window may begin at time T+1.6 seconds, the third time window may begin at time T+3.2 seconds, the fourth time window may begin at time T+4.8 seconds, and so on.

[0100] In some aspects, the ME may determine the handover decision after the TTT has elapsed. For example, after the TTT, the ME may select one of the target APs 504, 508 as the new serving AP for handover of the handover candidate 510, as will be described in more depth below.

[0101] Based on receiving notification of the handover scan schedule information (e.g., from the ME), each target AP may perform channel scans at a plurality of scheduled scan times determined based on the TTT information included in the handover scan schedule information. In one illustrative example, each target AP may determine the plurality of scheduled scan times such that the plurality of scheduled scan times are included in a corresponding upcoming schedule associated with the group ID of the handover candidate 510. For example, the plurality of channel scans performed by each target AP based on the TTT information may be included in an upcoming schedule associated with the group_id of the handover candidate 510 (e.g., where both the TTT information and the handover candidate 510 group_id information are determined based on the handover scan schedule information received from the ME at each target AP).

[0102] In some aspects, each target AP can use the TTT information and the handover candidate 510 group_id information to perform one or more channel scans on a calculated channel index (e.g., using the channel index). For example, the calculated channel index can be determined using some or all of the handover scan scheduling information sent by the ME to each target AP. In one illustrative example, the calculated channel index can be determined using {channel_map, access address, paEventCounter+X, group_id} information associated with the handover candidate 510. The calculated channel index used by each target AP can be different, such that each target AP in the plurality of APs will perform a channel scan for the handover candidate 510 on a different (and predetermined or coordinated) channel.

[0103] In some examples, the ME can be responded to with an acknowledgment based on successfully accepting the handover scan schedule information (e.g., from the ME) associated with the identified handover candidate 510. In one illustrative example, the handover scan schedule can be associated with each target AP, each target AP using a calculated channel index determined by each of the plurality of APs to perform a channel scan for a predetermined packet to be transmitted by the handover candidate 510 (e.g., at a time determined based on the TTT information).

[0104] In one illustrative example, each target AP of the plurality of APs may send a message to the ME indicating that the target AP successfully accepted a predetermined handover scan for an AUX_SYNC_IND packet to be sent by handover candidate 510 (eg, the predetermined packet may be an AUX_SYNC_IND packet).

[0105] In some aspects, the ME may direct the serving AP of the handover candidate 510 (eg, serving AP1 502) to schedule an AUX_SYNC_IND packet for the handover candidate 510. For example, Figure 5As shown in the example handover 500 of FIG. 5 , serving API 502 may send an AUX_SYNC_IND packet 521 a to the handover candidate 510 , scheduling an upcoming AUX_SYNC_IND packet 531 a to be sent by the handover candidate 510 .

[0106] Based on receiving the transmitted AUX_SYNC_IND packet 521a from the serving AP1 502 (e.g., as received AUX_SYNC_IND packet 521b), the handover candidate 510 may subsequently generate and transmit a scheduled AUX_SYNC_IND packet 531a at a scheduled time (e.g., based on the TTT information of the handover scan scheduling information) at which the target APs will perform their respective channel scans to determine energy information measured by each respective target AP that receives the AUX_SYNC_IND packet 531a transmitted by the handover candidate 510.

[0107] For example, the AUX_SYNC_IND packet 531 a transmitted by the handover candidate 510 may be generated in response to the handover candidate 510 receiving the scheduled AUX_SYNC_IND packet 521 a transmitted by the current serving API 502 .

[0108] As shown, the scheduled AUX_SYNC_IND packet 521a sent by the current serving API 502 to the handover candidate 510 may be sent in a first time window T (e.g., indicated as "Group_N" timing within each time window) at a time associated with the group of the handover candidate 510. The response AUX_SYNC_IND packet 531a sent by the handover candidate 510 in a second time window T+1.6s may be sent using the same "Group_N" timing within the second time window T+1.6s (e.g., packets 521a and 531a may both be sent using the same relative "Group_N" time slots in their respective first and second time windows).

[0109] Because the multiple APs included in the ESL system are fully synchronized (e.g., based at least in part on each of the multiple APs receiving the same handover scan schedule information from the ME in blocks 524 and 528), each of the multiple APs can wake up simultaneously within the second time window T+1.6s (e.g., also referred to as the second frame). For example, each of the multiple APs can wake up within the second frame T+1.6s in the same time slot associated with the group_id information of the handover candidate 510 (e.g., the "Group_N" time slot) and measure (or attempt to measure) the transmitted AUX_SYNC_IND packet 531a transmitted by the handover candidate 510. As previously described, each of the multiple APs can measure (or attempt to measure) the transmitted AUX_SYNC_IND packet 531a at a different frequency, the frequency being determined based on the channel_index information associated with each of the multiple APs.

[0110] In one illustrative example, each target AP 504, 508 may measure or otherwise determine energy information associated with receiving the AUX_SYNC_IND response packet 531a transmitted by the handover candidate 510. For example, each target AP may measure or otherwise determine RSSI information associated with receiving the AUX_SYNC_IND response packet 531a transmitted by the handover candidate 510 at a scheduled handover channel scan time (e.g., a "Group_N" time slot) within the second frame T+1.6s.

[0111] In some aspects, serving API 502 may receive the transmitted AUX_SYNC_IND response packet 531a as the received AUX_SYNC_IND packet 531d using the unique channel index associated with serving API 502. Serving API 502 may measure or otherwise determine an RSSI associated with receiving the received AUX_SYNC_IND packet 531d from handover candidate 510 and may report corresponding RSSI information to the ME at block 532.

[0112] Target AP2 504 may receive the transmitted AUX_SYNC_IND response packet 531a as a received AUX_SYNC_IND packet 531c using the unique channel index associated with target AP2 504. Target AP2 504 may measure or otherwise determine an RSSI associated with receiving the received AUX_SYNC_IND packet 531c from handover candidate 510 and may report corresponding RSSI information to the ME at block 534.

[0113] Target AP N 508 can be used with the target AP N508 associated with the unique channel index to receive the transmitted AUX_SYNC_IND response packet 531a as the received AUX_SYNC_IND packet 531b. N 508 may measure or otherwise determine an RSSI associated with receiving the received AUX_SYNC_IND packet 531 b from the handover candidate 510 and may report corresponding RSSI information to the ME at block 538 .

[0114] Based on receiving the corresponding energy information (e.g., RSSI information) determined by each of the plurality of APs that received the transmitted AUX_SYNC_IND response packet 531a sent by the handover candidate 510, at block 542, the ME may perform handover decision making to identify, select, or otherwise determine a new serving AP for handover of the handover candidate 510. For example, based on the ME receiving the AUX_SYNC_IND response packet 531a from AP1 502, AP2 504, and AP3 505, respectively, N Based on the RSSI information indicated in the corresponding RSSI measurements 532, 534, 538 received by the ME at 508, the ME can determine a new serving AP to select from one of the APs 502, 504, 508.

[0115] In one illustrative example, the ME may determine the new serving AP as the AP with the best RSSI measurement value (eg, included in the plurality of APs), indicating that if selected as the new serving AP, the corresponding AP may establish the strongest connection with the handover candidate 510. Figure 5 As depicted, the ME may cause current serving API 502 to generate and send an AUX_SYNC_IND packet 541a to handover candidate 510 (eg, which is received by handover candidate 510 as received AUX_SYNC_IND packet 541b ), indicating a new target AP that has been determined or selected as the new serving AP for handover of handover candidate 510 .

[0116] For example, the ME may determine (e.g., based on respective RSSI measurements 532, 534, 538 received for each of the plurality of APs) that target AP2 504 will be the new serving AP for handover of handover candidate 510. In some cases, target AP2 504 may be selected by the ME based on RSSI measurement information 534 associated with target AP2 504 having the best RSSI among respective RSSIs measured by the remaining APs 502, 508 and indicated to the ME.

[0117] The AUX_SYNC_IND packet 541a generated by the serving AP 502 and sent to the handover candidate 510 may indicate the identity of the new serving AP (e.g., target AP2 504) selected for handover to the handover candidate 510. For example, the AUX_SYNC_IND 541a of the previous serving AP1 502 may be used to indicate the identity of the selected new serving AP2 504 to the handover candidate 510. In one illustrative example, the payload information indicated by the AUX_SYNC_IND 541a of the previous serving AP1 502 may be extended or expanded to include information associated with the new serving AP2 504. For example, the AUX_SYNC_IND packet 541a sent by the previous serving AP1 502 (e.g., the AUX_SYNC_IND packet 541b received by the handover candidate 510) may indicate {channel_map, paEventCounter, access address, group_id} information associated with the new serving AP2 504.

[0118] At block 554 , the handover candidate 510 may synchronize with the target AP2 504 (eg, where the target AP2 504 is the new serving AP for the handover candidate 510 ) using information associated with the new serving AP2 504 determined based on the AUX_SYNC_IND packet 541 b received by the handover candidate 510 .

[0119] In one illustrative example, at block 554, the handover candidate 510 may synchronize with the target AP2 504 (e.g., may switch from the previous serving AP1 502 to the new serving AP2 504) without exiting the low power mode. For example, after receiving the AUX_SYNC_IND packet 541b in the third frame (T+3.2s), the handover candidate 510 may return to the low power mode for the remainder of the third frame (e.g., may sleep after receiving the AUX_SYNC_IND packet 541b).

[0120] In the fourth frame T+4.8s, the handover candidate 510 may utilize the new serving AP2 504 information determined from the previously received AUX_SYNC_IND packet 541b to immediately establish a synchronization connection with the new serving AP2 504. For example, because the handover candidate 510 previously received {channel_map, paEventCounter, access address, group_id} information associated with the new serving AP2 504 (e.g., via the AUX_SYNC_IND packet 541b received in the third frame T+3.2s), the handover candidate 510 may generate and transmit the AUX_SYNC_IND packet 551a that has been synchronized with the new serving AP2 504 in the fourth frame T+4.8s.

[0121] For example, based on having received {channel_map, paEventCounter, access address, group_id} information associated with the new serving AP2 504, the handover candidate 510 may establish a synchronization connection with the new serving AP2 504 immediately upon exiting the low power mode to transmit the AUX_SYNC_IND packet 551a in the "Group_N" time slot within the fourth frame T+4.8s (e.g., the handover candidate 510 may be handed over from the previous serving AP1 502 to the new serving AP2 504 without exiting the low power mode between receiving the AUX_SYNC_IND packet 541b and the subsequent wake-up event to transmit the AUX_SYNC_IND packet 551a in the next frame).

[0122] The transmission of the AUX_SYNC_IND packet 551 may itself be used to establish connection and synchronization between the handover candidate 510 and the new serving AP2 504 because, at block 542, the ME instead directly provides the handover candidate 510 with connection establishment information and synchronization information (e.g., as described with respect to the handover candidate 510) that would otherwise be exchanged in a dedicated transmission between the new serving AP2 504 and the handover candidate 510. Figure 4 described above).

[0123] Similarly, the receipt of the AUX_SYNC_IND packet 551b at the new serving AP2 504 can itself be used to establish connection and synchronization between the handover candidate 510 and the new serving AP2 504 because the new serving AP2 504 receives the AUX_SYNC_IND packet 551b with the same parameters (e.g., the same channel map, PA event counter, access address, and group ID) that the new serving AP2 504 expects when receiving packets from an ESL device (such as the handover candidate 510) that is connected and synchronized with the new serving AP2 504.

[0124] In some aspects, the systems and techniques described herein can be used to provide handover of ESL devices between APs in an ESL system, where handover decision making (e.g., such as the handover decision making performed by the ME at block 542) is performed using a data channel rather than a legacy channel (e.g., because the legacy channel may be crowded and experience contention between different devices and transmissions simultaneously attempting to enter the legacy channel). Based on performing handover of the handover candidate 510 using the data channel rather than the crowded legacy channel, the systems and techniques can minimize or eliminate the effects of channel crowding, interference, etc. that might otherwise negatively impact the handover process.

[0125] Additionally, handover measurements (e.g., RSSI measurements 532, 534, 538) can be performed without additional overhead and / or battery impact on the handover candidate 510. For example, because the ME notifies each AP (e.g., at blocks 524, 538) of a handover scan schedule that utilizes synchronized transmission and reception timing between the handover candidate 510 and the plurality of APs 502, 504, 508, the handover candidate 510 can implement handover based on transmitting the AUX_SYNC_IND packet 531a at a scheduled time in a scheduled time frame (e.g., the second frame T+1.6s) and receiving the AUX_SYNC_IND packet 541b at a scheduled time in a next or subsequent time frame (e.g., the third frame T+3.2s). In one illustrative example, the handover candidate 510 can perform or implement a handover without additional overhead or battery impact based on the handover candidate 510 transmitting and receiving only at scheduled wake-up times (e.g., "Group_N" time slots) within each time frame in which the handover candidate 510 has been triggered to wake up (e.g., regardless of the handover operation being performed).

[0126] Additionally, a handover of the handover candidate 510 can be performed between the previous serving AP1 502 and the selected new serving AP2 504 without performing a connection establishment between the handover candidate 510 and the selected new serving AP2 504. As described above, in one illustrative example, the systems and techniques can perform a handover using a fast connection between the handover candidate 510 and the selected new serving AP2 504 based on the required security and connection information (e.g., artifacts) that the handover candidate 510 previously received (e.g., from the ME and / or the previous serving AP1 502) that the handover candidate 510 needs to connect to, synchronize with, and / or communicate with the new serving AP2 504. In some aspects, using the security and connection artifacts associated with the new serving AP2 504, the handover candidate 510 can perform a handover to the new serving AP2 504 (e.g., can switch its connection from the previous serving AP1 502 to the new serving AP2 504) without performing an existing two-way communication establishment message exchange or process.

[0127] In another illustrative example, switching can be performed using multiple responses to AUX_SYNC_IND packets sent on a specific group (e.g., group_id). Figure 5 The signaling diagram of FIG. 5 depicts an example handover process 500 in which a handover may be performed using a response to an AUX_SYNC_IND packet.

[0128] Figure 6FIG2 is a signaling diagram illustrating another example handover 600 of an ESL device (e.g., a rail controller, an active BLE tracker, etc.) from a first AP to a second AP. The example handover 600 can be performed in an ESL system. In one illustrative example, the ESL device handover 600 can be performed based on a predetermined packet, such as an AUX_SYNC_IND packet. In some aspects, the ESL device handover 600 can be performed based on a handover decision determined at an AP and / or ME included in the ESL system.

[0129] In some aspects, the ESL system associated with the example switch 600 can be used with Figure 5 The example switch 500 is the same or similar to the ESL system associated with the example switch 500. For example, Figure 6 An example switch 600 associated with an ESL system may include Figure 5 The first AP 602 (eg, serving AP1) which is the same as or similar to the first AP 502 may include Figure 5 The second AP 604 (eg, target AP2) that is the same as or similar to the second AP 504 may include Figure 5 One or more additional APs 508 that are the same as or similar to one or more additional APs 608 (eg, target AP N ); etc. In one illustrative example, multiple APs (eg, AP1 602, AP2 604, additional APs) included in the ESL system N 608) can be synchronized with each other. For example, an ESL system including multiple APs can be a fully synchronized network.

[0130] The handover candidate 610 may be the same as or similar to the handover candidate 510. For example, the handover candidate 610 may be a rail controller, an active BLE tracker, etc., as described above with respect to Figure 5 The switching candidate 510 is described.

[0131] In one illustrative example, ESL device switching 600 can be used to allow ESL devices (e.g., switching candidates 610) to wake up out of sequence within a frame (e.g., exit low power mode out of sequence within a frame). Additionally, the ESL devices can wake up out of sequence or in a frame to which the ESL devices are not assigned. In some aspects, within a given frame, the ESL devices can wake up out of sequence on a group to which the ESL devices are not assigned, and can additionally perform periodic wake-ups on a group to which the ESL devices are assigned (e.g., within the same given frame).

[0132] At block 622, the ME associated with the ESL system may be configured as described above with respect to Figure 5In some aspects, the primary AP (eg, current serving AP 1602) serving the handover candidate 610 may be identified or determined in the same or similar manner as described above. Figure 5 The {channel_map, access_address, paEventCounter, group_id} information of the handover candidate 610 is notified to the ME in the same or similar manner as described.

[0133] In one illustrative example, the current serving API 602 associated with the handover candidate 610 may notify the ME of {channel_map, access_address, paEventCounter, group_id} information of the handover candidate 610 associated with a previous time interval. For example, the current serving API 602 may notify the ME of {channel_map, access_address, paEventCounter, group_id} information to be associated with the handover candidate 610 or used by the handover candidate 610 in a previous time interval (e.g., to be used by the handover candidate 610 in a second time frame T+1.6s) during a first time frame T.

[0134] The ME may select or otherwise determine a non-crowding group (e.g., “Group_X” depicted in the second frame T+1.6s) from a plurality of available groups in the second frame T+1.6s. For example, the ME may select or determine the non-crowding group “Group_X” from a set of 128 different available groups in the second frame T+1.6s (e.g., where each of the 128 available groups has a duration of 1.6s / 128 = 12.5 milliseconds (ms)).

[0135] At blocks 624 and 628, the ME may notify each of the plurality of APs associated with the ESL system of {channel_map, access_address, paEventCounter, Group_X, TTT} information, which will be associated with or used by the handover candidate 610 in the preceding "Group_X" time interval (e.g., to be used by the handover candidate 610 in the second time frame T+1.6s). TTT may be the same as described above with respect to Figure 5 The trigger time information is the same or similar to the TTT described above, and the ME may be configured to perform a handover decision (e.g., at block 649) after the TTT has elapsed, again in the same manner as described above with respect to Figure 5 the same or similar manner as described.

[0136] Based on receiving the handover scan scheduling information for Group_X (e.g., at blocks 624, 628), the respective APs 604, 608 may schedule a channel scan in the second frame T+1.6s using a channel_index determined based on the {channel_map, access_address, paEventCounter, Group_X} information of the handover candidate 610 indicated to each respective AP in the handover scan scheduling information sent by the ME (e.g., in the same or similar manner as described above with respect to the handover scan scheduling information). Here, the plurality of APs 602, 604, 608 may be configured to perform channel scans at the Group_X time intervals determined and signaled by the ME at blocks 624, 628, rather than at the Group_N intervals typically associated with the handover candidate 610 (e.g., rather than at the Group_N intervals as described above with respect to the handover scan scheduling information). Figure 5 The channel scan scheduled at the Group_N interval is performed as described for the handover candidate 510).

[0137] For example, the ME may direct the serving AP1 602 to schedule the transmitted AUX_SYNC_IND packet 633a to be sent by the handover candidate 610 on Group_X within the second frame T+1.6s, wherein the handover candidate 610 sends the transmitted AUX_SYNC_IND packet 633a out of sequence on a group to which the handover candidate 610 is not assigned (e.g., Group_X instead of Group_N). In some aspects, the handover candidate 610 may additionally send the transmitted AUX_SYNC_IND packet 631a in the second frame using a scheduled periodic wakeup that is in sequence for the handover candidate 610 and on a group to which the handover candidate 610 is assigned (e.g., Group_N).

[0138] In some examples, the handover candidate 610 can generate and transmit an AUX_SYNC_IND packet 633a as an AUX_SYNC_IND response packet 633a on Group_X. In one illustrative example, the handover candidate 610 can generate and transmit the AUX_SYNC_IND packet 633a on all 11 response time slots associated with Group_X. Each of the plurality of APs (e.g., 602, 604, 608) can measure (or attempt to measure) energy information (e.g., RSSI information) associated with the AP's reception of the AUX_SYNC_IND response packet 633a based on the handover scan schedule information for Group_X received at blocks 624 and 628.

[0139] For example, at block 638, AP N608 can measure and report RSSI information to ME, which indicates the RSSI information provided by AP N 608 based on the RSSI determined by receiving the received AUX_SYNC_IND response packet 633b across all 11 access slots associated with Group_X. At block 634, AP2 604 may measure and report to the ME RSSI information indicating the RSSI determined by AP2 604 based on receiving the received AUX_SYNC_IND response packet 633c across all 11 access slots associated with Group_X. At block 632, AP1 602 may measure and report to the ME RSSI information indicating the RSSI determined by AP1 602 based on receiving the received AUX_SYNC_IND response packet 633d across all 11 access slots associated with Group_X. Each of the multiple APs may simultaneously measure and report to the ME RSSI information associated with receiving the sent AUX_SYNC_IND response packet 633a (e.g., blocks 632, 634, and 638 may be performed concurrently).

[0140] In some aspects, the reported RSSI measurements sent by each of the plurality of APs to the ME may indicate up to 11 RSSI measurements (eg, one RSSI measurement determined by the AP for each respective one of the 11 access slots associated with Group_X).

[0141] Subsequently, at block 649, the ME may perform handover decision making to identify, select, or otherwise determine a new serving AP for handover of the handover candidate 610 based on receiving corresponding energy information (e.g., RSSI information) determined by each of the plurality of APs that received the transmitted AUX_SYNC_IND response packet 633a transmitted by the handover candidate 610. In some examples, the handover decision associated with block 649 may be related to Figure 5 Similarly, at block 654, the handover candidate 610 may be connected to and / or synchronized with the new target AP2 604 determined via the handover decision of block 649, as described above. Figure 5 The handover candidate 510 is connected to and / or synchronized with the new target AP2 504 determined via the handover decision at block 554 in a manner that is the same as or similar to that of the handover candidate 510 .

[0142] In some respects, Figure 6The ESL device switching 600 can be used to obtain multiple measurement reports (e.g., RSSI measurement reports) per frame. For example, each of the multiple APs can obtain a first RSSI measurement report based on receiving a first AUX_SYNC_IND response packet 631a sent by the handover candidate 610 on the assigned Group_N of the handover candidate 610 in the scheduled time slot (e.g., as described above with respect to Figure 5 As described above). Additionally, each of the plurality of APs may obtain a second RSSI measurement report based on receiving a second AUX_SYNC_IND response packet 633a sent by the handover candidate 610 in the same frame but at an out-of-sequence time slot and on a Group_X that is not assigned to the handover candidate 610. In this manner, some (or all) of the plurality of APs associated with the ESL system may obtain and send to the ME two or more RSSI measurement reports associated with the handover candidate 610 per frame. The ME may then use the plurality of RSSI measurement reports sent by each of the plurality of APs to perform the handover decision determination of block 649.

[0143] In some aspects, receiving multiple RSSI measurement reports per frame from an AP may allow systems and techniques to perform ESL device handover 600 in a manner that is more robust to missed reception of AUX_SYNC_IND response packets (eg, 631a, 633a) sent by the handover candidate 610 to multiple APs.

[0144] In another illustrative example, the systems and techniques can be used to implement handover of an ESL device (e.g., a rail controller, an active BLE tracker, etc.) from a first AP to a second AP based on a handover decision determined or executed by the ESL device, as described in more depth below.

[0145] In some aspects, an ESL device handover can be performed using a predetermined packet (e.g., an AUX_SYNC_IND packet) and based on a handover decision determined by the ESL device. In some cases, the ESL device used to determine the handover decision can be a handover candidate ESL device (e.g., the handover decision is determined by the ESL device that is performing a handover from a first AP to a selected second AP that is different from the first AP).

[0146] In one illustrative example, an example handover can be performed by an ESL device included in or associated with a fully synchronized ESL network and / or a fully synchronized ESL system. For example, a rail controller or an active BLE tracker can perform handover decision-making based on determining one or more issues (or potential issues) associated with the rail controller or active BLE tracker's currently serving AP. In some cases, the ESL device (e.g., the rail controller or the active BLE tracker) can perform handover decision-making based on a repeated lack of AP_SYNC reception between the ESL device and the ESL device's currently serving AP.

[0147] Based on determining one or more issues or potential issues with the currently serving AP, the rail controller or active BLE tracker may perform discovery of potential candidate APs for handover. For example, the rail controller or active BLE tracker may determine an AUX_SYNC_IND frequency hopping sequence (HFS), which may include a set of indices that the rail controller or active BLE tracker can use to predict the channels used by any available APs in the frame. In some cases, the AUX_SYNC_IND HFS may be determined based on a join payload received from a management entity (ME). For example, for each handover candidate AP, an ESL device (e.g., a rail controller or active BLE tracker) may receive a join payload that includes channel map information, access address information, and event counter information. In one illustrative example, for each respective handover candidate AP, the ESL device may receive a join payload that includes or indicates {channel_map, access_address, paEventCounter} information associated with the respective handover candidate AP. For example, the ESL device may receive a join payload that indicates channel map information and index information associated with each candidate AP with which the ESL device is currently out of sync.

[0148] Based on the HFS included in the join payload, the ESL device may begin scanning at a predetermined rate on various handover candidate APs. In some examples, the ESL device may determine the predetermined rate selected by the ESL device based on configuration information and / or using adaptive determination. In some aspects, the ESL device may scan at a rate of up to 80 Hertz (Hz). Each channel scan may be associated with a corresponding handover candidate AP from a plurality of handover candidate APs. In some cases, the ESL device may determine energy information associated with each of up to 37 data channels. For example, the ESL device may determine energy information for each data channel included in a set of 37 data channels.

[0149] In some aspects, the energy information determined by the ESL device can be received signal strength indicator (RSSI) information associated with each of the plurality of handover candidate APs. In one illustrative example, the ESL device can use the received energy information (e.g., RSSI information) to rank the handover candidate APs based on an order of preference and / or based on a handover algorithm to determine one or more handover candidate APs for selection by the ESL device.

[0150] Based on the ordered list of handover candidate APs (and / or based on selecting a subset of handover candidate APs from a plurality of handover candidate APs), the ESL device may generate and send an unsolicited response on one of the channels available for AUX_SYNC_IND. For example, a time slot or group within a frame may be reserved for sending an unsolicited response by a ME associated with the ESL system. In some aspects, the ME may select and reserve a time slot or group within a frame based on determining a non-crowded group. In some aspects, the ME may dynamically determine a time slot within AP_SYNC that may be used to determine or estimate a load across handover candidate APs for an upcoming connection to exchange further join payload information. For example, the ME may dynamically determine and / or reserve a time slot within AP_SYNC that may be used to perform load balancing across a plurality of handover candidate APs.

[0151] One or more selected handover candidate APs (e.g., selected by the ESL device using corresponding RSSI information received from a plurality of handover candidate APs) may generate and send an acknowledgment (ACK) based on receiving an unsolicited response sent by the ESL device. In some examples, the one or more selected handover candidate APs may then send an ACRQ to establish a connection with the ESL device for further exchange of joining information (e.g., security exchange, group and / or EID association, etc.). In some aspects, the one or more selected handover candidate APs may generate and send one or more messages to the ME indicating a further exchange of joining information between the selected handover candidate AP and the ESL device, and may additionally wait for receipt of an ACK or other confirmation in a response from the ME.

[0152] In some examples, after an ACRQ and connection establishment performed by and / or between one or more selected handover candidate APs and the ESL device, the ESL device can move (e.g., undergo handover) from its current serving AP to one or more selected handover candidate APs, where the one or more selected handover candidate APs are used as new serving APs for the ESL device. In some aspects, based on message payloads exchanged between the ESL device and the encrypted selected handover candidate APs, a session key associated with the ESL system can be generated and shared by each of the plurality of APs included in the ESL system (e.g., without generating a session key for each of the plurality of APs).

[0153] In some aspects, the systems and techniques can be used to implement a handover of an ESL device (e.g., a rail controller, an active BLE tracker, etc.) from a first AP to a second AP based on a handover decision determined or executed by the ESL device, as described above. The handover decision can be determined using a data channel between the ESL device performing the handover and one or more of a plurality of APs included in the ESL system. In some examples, the handover decision can be based on one or more energy measurements (e.g., RSSI measurements) determined without consuming AP capacity. For example, based on measuring RSSI information of a plurality of handover candidate APs using the ESL device, a handover can be performed for the ESL device without additional AP overhead.

[0154] Figure 7 700 is a flow chart illustrating an example of a process 700 for wireless communication. The process 700 may be performed by a network entity (e.g., such as an ME) and / or a network device (e.g., such as an AP) or by a component or system thereof (e.g., a chipset). The operations of the process 700 may be implemented as a processor on one or more processors (e.g., Figure 9 In addition, for example, the transmission and reception of signals by the wireless communication device in process 700 may be implemented by one or more antennas and / or one or more transceivers (e.g., wireless transceivers).

[0155] At block 702, process 700 includes determining a handover candidate, where the handover candidate is a wireless communication device among a plurality of wireless communication devices associated with a network entity. For example, the network entity may be an access point (AP), such as Figure 1 AP 110; Figure 4 AP 410 and / or AP 420; Figure 5 APs 502, 504, 508; and / or Figure 6In some cases, the network entity is a management entity (ME), and each of the plurality of network devices is an AP. For example, the network entity may be a ME, such as Figure 1 ME 130.

[0156] In some cases, each of the plurality of wireless communication devices may be an electronic shelf label (ESL) device. In some examples, each of the plurality of wireless communication devices may be associated with Figure 1 The wireless communication device 120 and / or Figure 3 The wireless communication devices 305a-305e are the same or similar.

[0157] In some cases, the handover candidate is a rail controller associated with one or more ESL devices. In some examples, the handover candidate can be associated with Figure 5 The handover candidate 510 and / or Figure 6 The handover candidates 610 are the same or similar to one or more of the handover candidates. In some examples, the handover candidate is an active Bluetooth Low Energy (BLE) tracker ESL device.

[0158] In some examples, a network entity may determine a handover candidate based on obtaining received signal strength indicator (RSSI) information associated with a plurality of wireless communication devices. For example, the network entity may determine a handover candidate (e.g., an AP) based on RSSI information associated with a corresponding transmission received from each of the plurality of wireless communication devices at the handover candidate. For example, the handover candidate may measure or otherwise obtain RSSI information corresponding to a corresponding transmission (e.g., an unsolicited ESL response) received from each of the plurality of ESLs. For example, the network entity may determine a handover candidate based on Figure 5 One or more of RSSI measurement reports 532, 534, 538 and / or Figure 6 The network entity may determine the handover candidate based on analyzing the RSSI information associated with the handover candidate and the RSSI information associated with one or more of the plurality of wireless communication devices. For example, the network entity may determine the handover candidate based on analyzing the RSSI information associated with the handover candidate and the RSSI information associated with one or more of the plurality of wireless communication devices. Figure 5 542 or Figure 6 649 in which the switching candidate is determined and notified.

[0159] At block 704, process 700 includes sending channel information and scheduling information associated with the handover candidate to each of the plurality of network devices. For example, the network entity may be a serving AP such as Figure 5 The serving AP 502 and / or Figure 6The service AP 602. The multiple network devices may include Figure 5 Target APs 504 and 508, Figure 6 Target APs 604 and 608, Figure 5 The handover candidate 510 and / or Figure 6 The switching candidate 610 is shown in FIG.

[0160] The channel information associated with the handover candidate may indicate a channel map associated with the handover candidate, a periodic advertisement (PA) counter associated with the handover candidate, and a group identifier associated with the handover candidate. In some cases, the scheduling information associated with the handover candidate indicates a time to trigger (TTT) associated with scheduling of channel scans for the handover candidate.

[0161] At block 706, process 700 includes receiving, from each of the plurality of network devices, energy information associated with a predetermined packet received by each of the plurality of network devices. For example, the energy information may indicate received signal strength indicator (RSSI) information associated with reception of the predetermined packet by the network device in the plurality of network devices. The network entity may determine the energy information based on the energy information. Figure 5 One or more of RSSI measurement reports 532, 534, 538 and / or Figure 6 RSSI information may be determined by using one or more of the RSSI measurement reports 632, 634, and 638.

[0162] In some examples, the predetermined packet is received by each of the plurality of network devices using the same scheduled time slot, the same scheduled time slot being based on scheduling information associated with the handover candidate. For example, the same scheduled time slot may be a time slot associated with an AUX_SYNC_ID such as Figure 5 AUX_SYNC_ID 521, 531, 541, 551 and / or Figure 6 In some examples, the predetermined packet is an AUX_SYNC_IND response packet sent by the handover candidate, such as Figure 5 AUX_SYNC_IND response packets 521b, 531a, 541b, 551 and / or Figure 6 The AUX_SYNC_IND response packet may be sent by the handover candidate at a scheduled transmission time based on scheduling information associated with the handover candidate.

[0163] At block 708, process 700 includes determining a target network device for handover associated with the handover candidate based on the received energy information. In some cases, the network entity may send handover information indicating the target network device to the handover candidate. For example, the network entity may send Figure 5 Switching information 542 and / or Figure 6 The handover information 649 may indicate a channel map associated with the target network device, a periodic advertisement (PA) counter associated with the target network device, and a group identifier associated with the target network device.

[0164] In some cases, the network entity may send second channel information associated with the handover candidate and second scheduling information associated with the handover candidate to each of the plurality of network devices, where the second scheduling information is different from the scheduling information. The network entity may receive, from each of the plurality of network devices, additional energy information associated with the second predetermined packet received by each of the plurality of network devices. The network entity may determine a target network device associated with the handover candidate for handover based on the energy information and the additional energy information.

[0165] In some cases, the energy information and the additional energy information are received in the same time frame associated with the network entity and the plurality of network devices. In some cases, the predetermined packet and the second predetermined packet are each an AUX_SYNC_IND response packet sent by the handover candidate based on the respective scheduling information and the second scheduling information. In some examples, the predetermined packet is received by each of the plurality of network devices using an assigned group associated with the handover candidate. The second predetermined packet can be received by each of the plurality of network devices using an unassigned group associated with the handover candidate.

[0166] Figure 8 is a flow chart illustrating an example of a process 800 for wireless communication. The process 800 may be performed by a wireless communication device (e.g., such as an electronic shelf label (ESL) device, a rail controller, an active BLE tracker, etc.) or by a component or system thereof (e.g., a chipset). The operations of the process 800 may be implemented as a processor on one or more processors (e.g., Figure 9 In addition, the transmission and reception of signals by the wireless communication device in process 800 may be implemented, for example, by one or more antennas and / or one or more transceivers (eg, wireless transceivers).

[0167] At block 802, process 800 includes determining one or more handoff candidate APs for handoff of a wireless communication device from a serving access point (AP) associated with the wireless communication device. For example, the wireless communication device may determine the one or more handoff candidate APs. The wireless communication device may include one or more track controllers associated with one or more electronic shelf label (ESL) devices and / or active Bluetooth Low Energy (BLE) tracker ESL devices. In some cases, each of the plurality of wireless communication devices may be an electronic shelf label (ESL) device. In some examples, each of the plurality of wireless communication devices may be associated with Figure 1 The wireless communication device 120 and / or Figure 3 The one or more handover candidate APs and the serving AP may be the same or similar to the one or more APs described herein, such as Figure 1 AP 110; Figure 4 AP 410 and / or AP 420; Figure 5 APs 502, 504, 508; and / or Figure 6 APs 602, 604, 608. In some cases, the wireless communication device may determine the selected handover candidate AP based on energy information associated with each of the one or more handover candidate APs. In some examples, the wireless communication device may determine the selected handover candidate AP based on sorting the one or more handover candidate APs into an ordered list of handover candidate APs based on energy information associated with each of the one or more handover candidate APs.

[0168] At block 804, process 800 includes determining a respective frequency hopping sequence (HFS) associated with each handover candidate of one or more handover candidate APs.

[0169] At block 806, process 800 includes determining energy information associated with each handover candidate AP based on a corresponding HFS associated with each of the one or more handover candidate APs. For example, the energy information associated with each handover candidate AP may include RSSI information, which may be related to Figure 5 One or more of RSSI measurement reports 532, 534, 538 and / or Figure 6 The RSSI information included in one or more of the RSSI measurement reports 632, 634, and 638 is the same or similar.

[0170] At block 808, process 800 includes sending a predetermined packet associated with the handover of the wireless communication device to a selected handover candidate AP of the one or more handover candidate APs. For example, the predetermined packet may be an AUX_SYNC_IND response packet sent by the wireless communication device to the selected handover candidate AP, such as Figure 5 AUX_SYNC_IND response packets 521b, 531a, 541b, 551 and / or Figure 6 One or more of 621b, 631a, 633a, 641b, 651a.

[0171] A network entity, a network device, and / or a wireless communication device may include various components, such as one or more input devices, one or more output devices, one or more processors, one or more microprocessors, one or more microcomputers, one or more cameras, one or more sensors, one or more receivers, transmitters, and / or transceivers, and / or other components configured to implement the steps of the processes described herein. In some examples, a computing device may include a display, a network interface configured to communicate and / or receive data, any combination thereof, and / or other components. The network interface may be configured to communicate and / or receive data based on an Internet Protocol (IP) or other types of data.

[0172] Configured to execute Figure 7 The process 700 of the apparatus and / or is configured to perform Figure 8 Components of the apparatus of process 800 may be implemented in circuitry. For example, the components may include and / or be implemented using electronic circuitry or other electronic hardware (which may include one or more programmable electronic circuits (e.g., microprocessors, graphics processing units (GPUs), digital signal processors (DSPs), central processing units (CPUs), and / or other suitable electronic circuitry)), and / or may include and / or be implemented using computer software, firmware, or any combination thereof to perform the various operations described herein.

[0173] Process 700 and process 800 are illustrated as logical flow diagrams, the operations of which represent a sequence of operations that can be implemented in hardware, computer instructions, or a combination thereof. In the context of computer instructions, an operation represents a computer-executable instruction stored on one or more computer-readable storage media that, when executed by one or more processors, performs the described operation. Generally, computer-executable instructions include routines, programs, objects, components, data structures, etc. that perform specific functions or implement specific data types. The order in which the operations are described is not intended to be construed as limiting, and any number of the described operations can be combined in any order and / or in parallel to implement the process.

[0174] Additionally, process 700, process 800, and / or other processes described herein may be executed under the control of one or more computer systems configured with executable instructions and may be implemented by hardware or a combination thereof as code (e.g., executable instructions, one or more computer programs, or one or more application programs) that is executed collectively on one or more processors. As described above, the code may be stored on a computer-readable or machine-readable storage medium, for example, in the form of a computer program comprising a plurality of instructions that can be executed by one or more processors. The computer-readable or machine-readable storage medium may be non-transitory.

[0175] Figure 9 is a block diagram illustrating an example of a computing system 900 that can be utilized by the disclosed systems and techniques. Specifically, Figure 9 An example of a computing system 900 is shown, which can be, for example, any computing device comprising an internal computing system, a remote computing system, a camera, or any component in which system components communicate with each other using connection 905. Connection 905 can be a physical connection using a bus, or a direct connection to processor 910, such as in a chipset architecture. Connection 905 can also be a virtual connection, a networked connection, or a logical connection.

[0176] In some aspects, computing system 900 is a distributed system in which the functionality described in this disclosure can be distributed across a data center, multiple data centers, a peer-to-peer network, etc. In some aspects, one or more of the described system components represent a plurality of such components, each component performing some or all of the functionality for which the component is described. In some aspects, a component can be a physical or virtual device.

[0177] The example system 900 includes at least one processing unit (CPU or processor) 910 and connections 905 that communicatively couple various system components, including system memory 915, such as read-only memory (ROM) 920 and random access memory (RAM) 925, to the processor 910. The computing system 900 may include a cache 912, which is a high-speed memory, directly connected to, proximate to, or integrated as part of the processor 910.

[0178] Processor 910 may include any general-purpose processor and hardware or software services, such as services 932, 934, and 936 stored in storage device 930, configured to control processor 910, as well as specialized processors, where software instructions are incorporated into the actual processor design. Processor 910 may essentially be a completely independent computing system, containing multiple cores or processors, buses, memory controllers, caches, etc. Multi-core processors may be symmetric or asymmetric.

[0179] To enable user interaction, the computing system 900 includes an input device 945, which can represent any number of input mechanisms, such as a microphone for voice, a touch-sensitive screen for gesture or graphical input, a keyboard, a mouse, motion input, voice, etc. The computing system 900 can also include an output device 935, which can be one or more of a plurality of output mechanisms. In some instances, a multimodal system can enable a user to provide multiple types of input / output to communicate with the computing system 900.

[0180] The computing system 900 may include a communication interface 940, which may generally control and manage user input and system output. The communication interface may perform or facilitate receiving and / or sending wired or wireless communications using a wired and / or wireless transceiver, including using an audio jack / plug, a microphone jack / plug, a Universal Serial Bus (USB) port / plug, an Apple TM 、Lightning TM Ports / plugs, Ethernet ports / plugs, fiber optic ports / plugs, proprietary wired ports / plugs, 3G, 4G, 5G and / or other cellular data network wireless signal transmission, Bluetooth TM Wireless signal transmission, Bluetooth TM Low Energy (BLE) wireless signal transmission, IBEACON TM Wireless signal transmission, radio frequency identification (RFID) wireless signal transmission, near field communication (NFC) wireless signal transmission, dedicated short range communication (DSRC) wireless signal transmission, 802.11 Wi-Fi wireless signal transmission, wireless local area network (WLAN) signal transmission, visible light communication (VLC), world interoperability for microwave access (WiMAX), infrared (IR) communication wireless signal transmission, public switched telephone network (PSTN) signal transmission, integrated services digital network (ISDN) signal transmission, ad hoc network signal transmission, radio wave signal transmission, microwave signal transmission, infrared signal transmission, visible light signal transmission, ultraviolet light signal transmission, wireless signal transmission along the electromagnetic spectrum, or a combination thereof.

[0181] Communication interface 940 may also include one or more distance sensors (e.g., lidar sensors, laser rangefinders, RF radars, ultrasonic sensors, and infrared (IR) sensors) configured to collect data and provide measurements to processor 910, whereby processor 910 may be configured to perform the determinations and calculations required to obtain the various measurements of the one or more distance sensors. In some examples, the measurements may include time of flight, wavelength, azimuth, elevation, distance, linear velocity, and / or angular velocity, or any combination thereof. Communication interface 940 may also include one or more Global Navigation Satellite System (GNSS) receivers or transceivers for determining the location of computing system 900 based on one or more signals received from one or more satellites associated with one or more GNSS systems. GNSS systems include, but are not limited to, the United States' GPS, Russia's Global Navigation Satellite System (GLONASS), China's BeiDou Navigation Satellite System (BDS), and Europe's Galileo GNSS. There is no limitation to operation on any particular hardware configuration; therefore, the basic features herein may be readily substituted for improved hardware or firmware arrangements as they become available.

[0182] The storage device 930 may be a non-volatile and / or non-transitory and / or computer-readable storage device and may be a hard disk or other type of computer-readable medium capable of storing computer-accessible data, such as a magnetic cassette, a flash memory card, a solid-state storage device, a digital versatile disk, a magnetic cassette, a floppy disk, a floppy disk, a hard disk, a magnetic tape, a magnetic stripe / strip, any other magnetic storage medium, a flash memory, a memristor memory, any other solid-state memory, a compact disc read-only memory (CD-ROM) disc, a rewritable compact disc (CD) disc, a digital video disc (DVD) disc, a Blu-ray disc (BDD) disc, a holographic disc, Another optical medium, a secure digital (SD) card, a micro secure digital (microSD) card, a Memory Stick® card, a smart card chip, an EMV chip, a subscriber identity module (SIM) card, a mini / micro / nano / pico SIM card, another integrated circuit (IC) chip / card, a random access memory (RAM), a static RAM (SRAM), a dynamic RAM (DRAM), a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a flash EPROM (FLASH EPROM), a cache memory (e.g., a first level (L1) cache, a second level (L2) cache, a third level (L3) cache, a fourth level (L4) cache, a fifth level (L5) cache, or other (L#) cache), a resistive random access memory (RRAM / ReRAM), a phase change memory (PCM), a spin transfer torque RAM (STT-RAM), another memory chip or tape cartridge, and / or combinations thereof.

[0183] Storage devices 930 may include software services, servers, and services. When the code defining such software is executed by processor 910, it enables the system to perform a function. In some aspects, hardware services that perform a particular function may include software components stored on a computer-readable medium and the necessary hardware components, such as processor 910, connection 905, output device 935, etc., to perform that function. The term "computer-readable medium" includes, but is not limited to, portable or non-portable storage devices, optical storage devices, and various other media capable of storing, containing, or carrying instructions and / or data. Computer-readable media may include non-transitory media in which data may be stored and does not include carrier waves and / or transient electronic signals propagated over wireless or wired connections. Examples of non-transitory media may include, but are not limited to, magnetic disks or tapes, optical storage media such as compact discs (CDs) or digital versatile discs (DVDs), flash memory, memory, or storage devices. Computer-readable media may store thereon code and / or machine-executable instructions, which may represent procedures, functions, subroutines, programs, routines, subroutines, modules, software packages, classes, or any combination of instructions, data structures, or program statements. A code segment can be coupled to another code segment or a hardware circuit by passing and / or receiving information, data, arguments, parameters, or memory contents. Information, parameters, data, etc. can be passed, forwarded, or transmitted by any suitable means, including memory sharing, message passing, token passing, network transmission, etc.

[0184] Specific details are provided in the above description to provide a comprehensive understanding of the aspects and examples provided herein, but those skilled in the art will recognize that the present application is not limited thereto. Therefore, although the illustrative aspects of the present application have been described in detail herein, it should be understood that, in addition to being limited by the prior art, the concepts of the present invention can be implemented and used differently in other ways, and the appended claims are intended to be interpreted as including these changes. The various features and aspects of the above application can be used alone or in combination. In addition, without departing from the broader scope of this specification, each aspect can be used in any number of environments and applications other than those described herein. Therefore, the description and drawings should be regarded as illustrative rather than restrictive. For illustrative purposes, the method is described in a specific order. It should be understood that, in alternative aspects, these methods can be performed in a different order than described.

[0185] For explanation clarity, in some cases, the present technology can be presented as including separate functional blocks, which include devices, device components, steps or routines in methods implemented with software or a combination of hardware and software. In addition to the components shown in the figures and / or described herein, other components can also be used. For example, circuits, systems, networks, processes and other components can be shown as components in block diagram form to avoid unnecessary details blurring these aspects. In other instances, to avoid blurring these aspects, well-known circuits, processes, algorithms, structures and techniques can be shown without unnecessary details.

[0186] In addition, it will be appreciated by those skilled in the art that the various illustrative logic blocks, modules, circuits, and algorithmic steps described in conjunction with the aspects disclosed herein may be implemented as electronic hardware, computer software, or a combination of the two. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above based on their functions. Whether such functionality is implemented as hardware or software depends on the specific application and the design constraints on the overall system. A skilled person may implement the described functionality in different ways for each specific application, but such implementation decisions should not be interpreted as resulting in a departure from the scope of this disclosure.

[0187] Various aspects may be described above as processes or methods depicted as flow charts, flow diagrams, data flow diagrams, structure diagrams, or block diagrams. Although flow charts may depict operations as sequential processes, many operations may be performed in parallel or concurrently. Furthermore, the order of operations may be rearranged. When the operations of a process are completed, the process terminates, but there may be additional steps not included in the diagram. A process may correspond to a method, function, procedure, subroutine, subprogram, etc. When a process corresponds to a function, its termination may correspond to the function returning to the calling function or main function.

[0188] The processes and methods according to the examples described above can be implemented using computer-executable instructions stored in or otherwise obtained from a computer-readable medium. Such instructions may include, for example, instructions and data that cause or otherwise configure a general-purpose computer, a special-purpose computer, or a processing device to perform a specific function or group of functions. Some of the computer resources used may be accessible over a network. The computer-executable instructions may be, for example, binary, intermediate format instructions, such as assembly language, firmware, source code. Examples of computer-readable media that can be used to store instructions, information, and / or information created during the methods according to the examples described include magnetic or optical disks, flash memory, USB devices equipped with non-volatile memory, network storage devices, and the like.

[0189] In some aspects, computer-readable storage devices, media, and memories may include wired or wireless signals including bit streams, etc. However, when referred to, non-transitory computer-readable storage media expressly excludes media such as energy, carrier signals, electromagnetic waves, and signals themselves.

[0190] Those skilled in the art will appreciate that any of a variety of different techniques and methods may be used to represent information and signals. For example, in some cases, depending in part on the specific application, in part on the desired design, in part on the corresponding technology, etc., the data, instructions, commands, information, signals, bits, symbols, and chips that may be mentioned in the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.

[0191] The various exemplary logic blocks, modules, and circuits described in conjunction with the aspects disclosed herein may be implemented or executed using hardware, software, firmware, middleware, microcode, hardware description languages, or any combination thereof, and may take any of a variety of form factors. When implemented in software, firmware, middleware, or microcode, the program code or code segments (e.g., a computer program product) that perform the necessary tasks may be stored on a computer-readable or machine-readable medium. A processor may perform the necessary tasks. Examples of form factors include laptops, smartphones, mobile phones, tablet devices, or other small personal computers, personal digital assistants, rack-mount devices, standalone devices, and the like. The functionality described herein may also be implemented in peripheral devices or add-in cards. As a further example, such functionality may also be implemented on different chips or processes executed on a circuit board within a single device.

[0192] The instructions, the media for transmitting such instructions, the computing resources for executing them, and other structures for supporting such computing resources are example means for providing the functionality described in this disclosure.

[0193] The techniques described herein may also be implemented in electronic hardware, computer software, firmware, or any combination thereof. These techniques may be implemented in any of a variety of devices, such as a general-purpose computer, a wireless communication device handset, or an integrated circuit device with multiple uses, including applications in wireless communication devices handsets and other devices. Any features described as modules or components may be implemented together in an integrated logic device or separately as discrete but interoperable logic devices. If implemented in software, the techniques may be implemented at least in part by a computer-readable data storage medium containing program code, including instructions that, when executed, perform one or more of the methods, algorithms, and / or operations described above. The computer-readable data storage medium may form part of a computer program product, which may include packaging materials. The computer-readable medium may include memory or data storage media, such as random access memory (RAM) such as synchronous dynamic random access memory (SDRAM), read-only memory (ROM), non-volatile random access memory (NVRAM), electrically erasable programmable read-only memory (EEPROM), flash memory, magnetic or optical data storage media, and the like. Additionally or alternatively, these techniques may be implemented at least in part by a computer-readable communication medium that carries or communicates program code in the form of instructions or data structures and that can be accessed, read, and / or executed by a computer, such as a propagated signal or wave.

[0194] The program code may be executed by a processor, which may include one or more processors, such as one or more digital signal processors (DSPs), general-purpose microprocessors, application-specific integrated circuits (ASICs), field-programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuitry. Such a processor may be configured to perform any of the techniques described in this disclosure. A general-purpose processor may be a microprocessor; however, in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, such as a combination of a DSP and a microprocessor, multiple microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. Therefore, the term "processor," as used herein, may refer to any of the foregoing structures, any combination of the foregoing structures, or any other structure or apparatus suitable for implementing the techniques described herein.

[0195] Those skilled in the art will understand that the less than ("<") and greater than (">") symbols or terms used herein may be replaced by less than or equal to (" ") and greater than or equal to (" ) symbol to replace it.

[0196] Where a component is described as being “configured to” perform certain operations, such configuration may be achieved, for example, by designing electronic circuits or other hardware to perform the operation, by programming a programmable electronic circuit (such as a microprocessor or other suitable electronic circuit) to perform the operation, or any combination thereof.

[0197] The phrases “coupled to” or “communicatively coupled to” refer to any component that is physically connected directly or indirectly to another component, and / or any component that communicates directly or indirectly with another component (e.g., via a wired or wireless connection and / or other suitable communication interface).

[0198] Claim language or other language that recites "at least one of" a set and / or "one or more" of a set means that one member of the set or multiple members of the set (in any combination) satisfies the claim. For example, claim language that recites "at least one of A and B" or "at least one of A or B" means A, B, or A and B. In another example, claim language that recites "at least one of A, B, and C" or "at least one of A, B, or C" means A, B, C, or A and B, or A and C, or B and C. The language "at least one of" a set and / or "one or more" of a set does not limit the set to the listed items in the set. For example, claim language that recites "at least one of A and B" or "at least one of A or B" can mean A, B, or A and B, and can additionally include items not listed in the set of A and B.

[0199] Illustrative aspects of the present disclosure include:

[0200] Aspect 1. A network entity for wireless communication, the network entity comprising: at least one memory; and at least one processor, coupled to the at least one memory and configured to: determine a handover candidate, wherein the handover candidate is a wireless communication device among a plurality of wireless communication devices associated with the network entity; send channel information and scheduling information associated with the handover candidate to each of the plurality of network devices; receive energy information associated with a predetermined packet received by each of the plurality of network devices from each of the plurality of network devices; and determine a target network device for handover associated with the handover candidate based on the received energy information.

[0201] Aspect 2. The network entity according to aspect 1, wherein the at least one processor is further configured to send handover information indicating the target network device to the handover candidate.

[0202] Aspect 3. The network entity of aspect 2, wherein the handover information indicates a channel map associated with the target network device, a periodic advertisement (PA) counter associated with the target network device, and a group identifier associated with the target network device.

[0203] Aspect 4. The network entity according to any one of aspects 1 to 3, wherein the energy information indicates received signal strength indicator (RSSI) information associated with a network device among the plurality of network devices receiving a predetermined packet.

[0204] Aspect 5. The network entity according to any one of aspects 1 to 4, wherein the predetermined packet is received by each of the plurality of network devices using the same scheduling time slot, the same scheduling time slot being based on scheduling information associated with the handover candidate.

[0205] Aspect 6. The network entity according to any one of aspects 1 to 5, wherein the predetermined packet is an AUX_SYNC_IND response packet sent by the handover candidate.

[0206] Aspect 7. The network entity of aspect 6, wherein the AUX_SYNC_IND response packet is sent by the handover candidate at a scheduled transmission time, the scheduled transmission time being based on scheduling information associated with the handover candidate.

[0207] Aspect 8. The network entity according to any one of aspects 1 to 7, wherein the network entity is an access point (AP).

[0208] Aspect 9. The network entity according to any one of aspects 1 to 8, wherein the network entity is a management entity (ME), and each of the plurality of network devices is an access point (AP).

[0209] Aspect 10. The network entity according to any one of aspects 1 to 9, wherein each wireless communication device of the plurality of wireless communication devices is an electronic shelf label (ESL) device.

[0210] Aspect 11. The network entity according to any one of aspects 1 to 10, wherein the handover candidate is a rail controller associated with one or more electronic shelf label (ESL) devices.

[0211] Aspect 12. The network entity according to any one of aspects 1 to 11, wherein the handover candidate is an active Bluetooth Low Energy (BLE) tracker ESL device.

[0212] Aspect 13. The network entity according to any one of Aspects 1 to 12, wherein, to determine the handover candidate, at least one processor is configured to: obtain received signal strength indicator (RSSI) information associated with multiple wireless communication devices; and determine the handover candidate based on analyzing the RSSI information associated with the handover candidate and RSSI information associated with one or more of the multiple wireless communication devices.

[0213] Aspect 14. The network entity according to any one of aspects 1 to 13, wherein the channel information associated with the handover candidate indicates a channel map associated with the handover candidate, a periodic advertisement (PA) counter associated with the handover candidate, and a group identifier associated with the handover candidate.

[0214] Aspect 15. The network entity according to any one of aspects 1 to 14, wherein the scheduling information associated with the handover candidate indicates a time to trigger (TTT) associated with scheduling of channel scanning for the handover candidate.

[0215] Aspect 16. A network entity according to any one of Aspects 1 to 15, wherein at least one processor is further configured to: send second channel information associated with a switching candidate and second scheduling information associated with the switching candidate to each of a plurality of network devices, wherein the second scheduling information is different from the scheduling information; and receive additional energy information associated with a second predetermined packet received by each of the plurality of network devices from each of the plurality of network devices.

[0216] Aspect 17. The network entity of aspect 16, wherein the at least one processor is further configured to determine a target network device for handover associated with the handover candidate based on the energy information and the additional energy information.

[0217] Aspect 18. The network entity of aspect 17, wherein the energy information and the additional energy information are received in a same time frame associated with the network entity and the plurality of network devices.

[0218] Aspect 19. The network entity according to any one of aspects 16 to 18, wherein the predetermined packet and the second predetermined packet are each an AUX_SYNC_IND response packet sent by the handover candidate based on the corresponding scheduling information and the second scheduling information.

[0219] Aspect 20. A network entity according to any one of Aspects 16 to 19, wherein: the predetermined packet is received by each of the plurality of network devices using an assigned group associated with the handover candidate; and the second predetermined packet is received by each of the plurality of network devices using an unassigned group associated with the handover candidate.

[0220] Aspect 21. A wireless communication device for wireless communication, the wireless communication device comprising: at least one memory; and at least one processor, coupled to the at least one memory, and configured to: determine one or more handover candidate APs for handover of the wireless communication device from a serving access point (AP) associated with the wireless communication device; determine a corresponding frequency hopping sequence (HFS) associated with each of the one or more handover candidate APs; determine energy information associated with each of the one or more handover candidate APs based on the corresponding HFS associated with each of the one or more handover candidate APs; and send a predetermined packet associated with the handover of the wireless communication device to a selected handover candidate AP among the one or more handover candidate APs.

[0221] Aspect 22. The wireless communication device of aspect 21, wherein the wireless communication device is one of: a track controller associated with one or more electronic shelf label (ESL) devices; or an active Bluetooth Low Energy (BLE) tracker ESL device.

[0222] Aspect 23. The wireless communication device of any one of aspects 21 to 22, wherein the at least one processor is configured to determine the selected handover candidate AP based on energy information associated with each of the one or more handover candidate APs.

[0223] Aspect 24. A wireless communication device according to Aspect 23, wherein, in order to determine the selected handover candidate AP, at least one processor is configured to: classify one or more handover candidate APs into an ordered list of handover candidate APs based on energy information associated with each of the one or more handover candidate APs.

[0224] Aspect 25. A method of wireless communication performed at a network entity, the method comprising: determining a switching candidate, wherein the switching candidate is a wireless communication device among a plurality of wireless communication devices associated with the network entity; sending channel information and scheduling information associated with the switching candidate to each of the plurality of network devices; receiving energy information associated with a predetermined packet received by each of the plurality of network devices from each of the plurality of network devices; and determining a target network device for switching associated with the switching candidate based on the received energy information.

[0225] Aspect 26. The method according to aspect 25, further comprising sending handover information indicating the target network device to the handover candidate.

[0226] Aspect 27. The method of aspect 26, wherein the handover information indicates a channel map associated with the target network device, a periodic advertisement (PA) counter associated with the target network device, and a group identifier associated with the target network device.

[0227] Aspect 28. The method according to any one of aspects 25 to 27, wherein the energy information indicates received signal strength indicator (RSSI) information associated with reception of the predetermined packet by a network device among the plurality of network devices.

[0228] Aspect 29. The method according to any one of aspects 25 to 28, wherein the predetermined packet is received by each of the plurality of network devices using the same scheduled time slot, the same scheduled time slot being based on scheduling information associated with the handover candidate.

[0229] Aspect 30. The method according to any one of aspects 25 to 29, wherein the predetermined packet is an AUX_SYNC_IND response packet sent by the handover candidate.

[0230] Aspect 31. The method of aspect 30, wherein the AUX_SYNC_IND response packet is sent by the handover candidate at a scheduled transmission time, the scheduled transmission time being based on scheduling information associated with the handover candidate.

[0231] Aspect 32. The method according to any one of aspects 25 to 31, wherein the network entity is an access point (AP).

[0232] Aspect 33. The method according to any one of aspects 25 to 32, wherein the network entity is a management entity (ME), and each of the plurality of network devices is an access point (AP).

[0233] Aspect 34. The method of any one of aspects 25 to 33, wherein each wireless communication device of the plurality of wireless communication devices is an electronic shelf label (ESL) device.

[0234] Aspect 35. The method of any one of aspects 25 to 34, wherein the handover candidate is a rail controller associated with one or more electronic shelf label (ESL) devices.

[0235] Aspect 36. The method according to any one of aspects 25 to 35, wherein the handover candidate is an active Bluetooth Low Energy (BLE) tracker ESL device.

[0236] Aspect 37. A method according to any one of Aspects 25 to 36, wherein determining the handover candidate comprises: obtaining received signal strength indicator (RSSI) information associated with multiple wireless communication devices; and determining the handover candidate based on analyzing the RSSI information associated with the handover candidate and RSSI information associated with one or more wireless communication devices of the multiple wireless communication devices.

[0237] Aspect 38. The method according to any one of aspects 25 to 37, wherein the channel information associated with the handover candidate indicates a channel map associated with the handover candidate, a periodic advertisement (PA) counter associated with the handover candidate, and a group identifier associated with the handover candidate.

[0238] Aspect 39. The method according to any one of aspects 25 to 38, wherein the scheduling information associated with the handover candidate indicates a time to trigger (TTT) associated with the scheduling of the channel scan for the handover candidate.

[0239] Aspect 40. The method according to any one of Aspects 25 to 39 further includes: sending second channel information associated with the switching candidate and second scheduling information associated with the switching candidate to each of the multiple network devices, wherein the second scheduling information is different from the scheduling information; and receiving additional energy information associated with a second predetermined packet received by each of the multiple network devices from each of the multiple network devices.

[0240] Aspect 41. The method of aspect 40, further comprising: determining a target network device for handover associated with the handover candidate based on the energy information and the additional energy information.

[0241] Aspect 42. The method of aspect 41, wherein the energy information and the additional energy information are received in a same time frame associated with the network entity and the plurality of network devices.

[0242] Aspect 43. The method according to any one of aspects 40 to 42, wherein the predetermined packet and the second predetermined packet are each an AUX_SYNC_IND response packet sent by the handover candidate based on the corresponding scheduling information and the second scheduling information.

[0243] Aspect 44. A method according to any one of Aspects 40 to 43, wherein: a predetermined packet is received by each of the plurality of network devices using an assigned group associated with a switching candidate; and a second predetermined packet is received by each of the plurality of network devices using an unassigned group associated with a switching candidate.

[0244] Aspect 45. A method of wireless communication performed at a wireless communication device for wireless communication, the method comprising: determining one or more handover candidate APs for handover of the wireless communication device from a serving access point (AP) associated with the wireless communication device; determining a corresponding frequency hopping sequence (HFS) associated with each of the one or more handover candidate APs; determining energy information associated with each of the one or more handover candidate APs based on the corresponding HFS associated with each of the one or more handover candidate APs; and sending a predetermined packet associated with the handover of the wireless communication device to a selected handover candidate AP from the one or more handover candidate APs.

[0245] Aspect 46. The method of aspect 45, wherein the wireless communication device is one of: a track controller associated with one or more electronic shelf label (ESL) devices; or an active Bluetooth Low Energy (BLE) tracker ESL device.

[0246] Aspect 47. The method according to any one of aspects 45 to 46, further comprising determining the selected handover candidate AP based on energy information associated with each of the one or more handover candidate APs.

[0247] Aspect 48. The method of aspect 47, wherein determining the selected handover candidate AP comprises sorting the one or more handover candidate APs into an ordered list of handover candidate APs based on energy information associated with each of the one or more handover candidate APs.

[0248] Aspect 49. A non-transitory computer-readable medium comprising instructions that, when executed by at least one processor, cause the at least one processor to perform operations according to any one of aspects 1 to 20.

[0249] Aspect 50. A non-transitory computer-readable medium comprising instructions that, when executed by at least one processor, cause the at least one processor to perform operations according to any one of aspects 21 to 24.

[0250] Aspect 51. A non-transitory computer-readable medium comprising instructions that, when executed by at least one processor, cause the at least one processor to perform operations according to any one of aspects 25 to 44.

[0251] A non-transitory computer-readable medium comprising instructions that, when executed by at least one processor, cause the at least one processor to perform operations according to any one of aspects 45 to 48.

[0252] An apparatus for wireless communications, the apparatus comprising one or more apparatus modules for performing the operations according to any one of aspects 1 to 20.

[0253] An apparatus for wireless communications, the apparatus comprising one or more apparatus modules for performing the operations according to any one of aspects 21 to 24.

[0254] An apparatus for wireless communications, the apparatus comprising one or more apparatus modules for performing the operations according to any one of aspects 25 to 44.

[0255] An apparatus for wireless communications, the apparatus comprising one or more apparatus modules for performing the operations according to any one of aspects 45 to 48.

Claims

1. A network entity for wireless communication, the network entity comprising: at least one memory; as well as at least one processor coupled to the at least one memory and configured to: determining a handover candidate, wherein the handover candidate is a wireless communication device among a plurality of wireless communication devices associated with the network entity; sending channel information and scheduling information associated with the handover candidate to each of a plurality of network devices; receiving, from each of the plurality of network devices, energy information associated with a predetermined packet received by each of the plurality of network devices; as well as A target network device for handover associated with the handover candidate is determined based on the received energy information.

2. The network entity according to claim 1, wherein: The at least one processor is further configured to send handover information indicating the target network device to the handover candidate.

3. The network entity according to claim 2, wherein: The handover information indicates a channel map associated with the target network device, a periodic advertisement (PA) counter associated with the target network device, and a group identifier associated with the target network device.

4. The network entity according to claim 1, wherein: The energy information indicates received signal strength indicator (RSSI) information associated with a network device among the plurality of network devices receiving the predetermined packet.

5. The network entity according to claim 1, wherein: The predetermined packet is received by each of the plurality of network devices using a same scheduled time slot, the same scheduled time slot being based on the scheduling information associated with the handover candidate. The network entity according to claim 1 , wherein: The predetermined packet is an AUX_SYNC_IND response packet transmitted by the handover candidate.

7. The network entity according to claim 6, wherein: The AUX_SYNC_IND response packet is sent by the handover candidate at a scheduled transmission time, the scheduled transmission time being based on the scheduling information associated with the handover candidate.

8. The network entity according to claim 1, wherein: The network entity is an access point (AP).

9. The network entity according to claim 1, wherein: The network entity is a management entity (ME), and each of the plurality of network devices is an access point (AP).

10. The network entity according to claim 1, wherein: Each of the plurality of wireless communication devices is an electronic shelf label (ESL) device.

11. The network entity according to claim 1, wherein: The switching candidate is a rail controller associated with one or more electronic shelf label (ESL) devices.

12. The network entity according to claim 1, wherein: The handover candidate is an active Bluetooth Low Energy (BLE) tracker ESL device.

13. The network entity according to claim 1, wherein: In order to determine the handover candidate, the at least one processor is configured to: obtaining received signal strength indicator (RSSI) information associated with the plurality of wireless communication devices; and The handover candidate is determined based on analyzing RSSI information associated with the handover candidate and RSSI information associated with one or more wireless communication devices of the plurality of wireless communication devices.

14. The network entity according to claim 1, wherein: The channel information associated with the handover candidate indicates a channel map associated with the handover candidate, a periodic advertisement (PA) counter associated with the handover candidate, and a group identifier associated with the handover candidate.

15. The network entity according to claim 1, wherein: The scheduling information associated with the handover candidate indicates a time to trigger (TTT) associated with a schedule of channel scanning for the handover candidate.

16. The network entity according to claim 1, wherein: The at least one processor is further configured to: sending second channel information associated with the handover candidate and second scheduling information associated with the handover candidate to each of a plurality of network devices, wherein the second scheduling information is different from the scheduling information; as well as Additional energy information associated with a second predetermined packet received by each of the plurality of network devices is received from each of the plurality of network devices.

17. The network entity according to claim 16, wherein: The at least one processor is further configured to: The target network device for the handover, which is associated with the handover candidate, is determined based on the energy information and the additional energy information.

18. The network entity according to claim 17, wherein: The energy information and the additional energy information are received in a same time frame associated with the network entity and the plurality of network devices.

19. The network entity according to claim 16, wherein: The predetermined packet and the second predetermined packet are each an AUX_SYNC_IND response packet transmitted by the handover candidate based on corresponding scheduling information and second scheduling information.

20. The network entity according to claim 16, wherein: The predetermined packet is received by each of the plurality of network devices using an allocation group associated with the handoff candidate; and The second predetermined packet is received by each of the plurality of network devices using an unassigned group associated with the handover candidate.

21. A wireless communication device for wireless communication, the wireless communication device comprising: at least one memory; and at least one processor coupled to the at least one memory and configured to: determining one or more handoff candidate access points (APs) for handoff of the wireless communication device from a serving access point associated with the wireless communication device; determining a corresponding frequency hopping sequence (HFS) associated with each of the one or more handoff candidate APs; determining energy information associated with each handover candidate AP of the one or more handover candidate APs based on a corresponding HFS associated with each handover candidate AP; as well as A predetermined packet associated with handover of the wireless communication device is transmitted to a selected handover candidate AP from among the one or more handover candidate APs.

22. The wireless communication device according to claim 21, wherein The wireless communication device is one of the following: A rail controller associated with one or more electronic shelf label (ESL) devices; or Active Bluetooth Low Energy (BLE) tracker ESL device.

23. The wireless communication device according to claim 21, wherein The at least one processor is configured to determine the selected handover candidate AP based on energy information associated with each of the one or more handover candidate APs.

24. The wireless communication device according to claim 23, wherein To determine the selected handover candidate AP, the at least one processor is configured to: The one or more handover candidate APs are sorted into an ordered list of handover candidate APs based on energy information associated with each of the one or more handover candidate APs.

25. A wireless communication method performed at a network entity, the method comprising: determining a handover candidate, wherein the handover candidate is a wireless communication device among a plurality of wireless communication devices associated with a network entity; sending channel information and scheduling information associated with a handover candidate to each of a plurality of network devices; receiving, from each of the plurality of network devices, energy information associated with a predetermined packet received by each of the plurality of network devices; as well as A target network device for handover associated with the handover candidate is determined based on the received energy information.

26. The method of claim 25, further comprising sending handover information to the handover candidate, the handover information indicating one or more of a target network device, a channel map associated with the target network device, a periodic advertisement (PA) counter associated with the target network device, or a group identifier associated with the target network device.

27. The method according to claim 25, wherein The energy information indicates received signal strength indicator (RSSI) information associated with a network device among the plurality of network devices receiving a predetermined packet.

28. The method of claim 25, further comprising: sending second channel information associated with the handover candidate and second scheduling information associated with the handover candidate to each of the plurality of network devices, wherein the second scheduling information is different from the scheduling information; as well as Additional energy information associated with a second predetermined packet received by each of the plurality of network devices is received from each of the plurality of network devices.

29. The method according to claim 28, further comprising: A target network device for handover associated with the handover candidate is determined based on the energy information and the additional energy information.

30. A method of wireless communication performed at a wireless communication device for wireless communication, the method comprising: determining one or more handoff candidate access points (APs) for handoff of the wireless communication device from a serving access point associated with the wireless communication device; determining a corresponding frequency hopping sequence (HFS) associated with each of the one or more handoff candidate APs; determining energy information associated with each handover candidate AP of the one or more handover candidate APs based on a corresponding HFS associated with each handover candidate AP; as well as A predetermined packet associated with handover of the wireless communication device is transmitted to a selected handover candidate AP from among the one or more handover candidate APs.