Scalable ranging and positioning method for passive device based on BLE channel sounding
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2026-02-06
- Publication Date
- 2026-08-13
Smart Images

Figure KR2026002255_13082026_PF_FP_ABST
Abstract
Description
Scalable range and positioning method for passive devices based on BLE channel sounding
[0001] The present disclosure relates to Bluetooth Low Energy (BLE) technology. More specifically, the present disclosure relates to a method for efficiently measuring the location of a device through BLE channel sounding and an apparatus for the same.
[0002] Bluetooth technology is a short-range wireless communication technology that enables electronic devices to connect with each other for the exchange of data or information. Bluetooth technology may include Bluetooth Classic technology and Bluetooth Low Energy (BLE) technology.
[0003] Bluetooth Classic is a communication protocol that streams data over 79 channels in the 2.4 GHz ISM (industrial, scientific and medical) frequency band. Bluetooth Classic supports point-to-point device communication and is primarily used to enable wireless audio streaming.
[0004] BLE technology is designed for very low-power operation and can support various communication topologies. BLE technology is used not only for communication between devices but also for measuring device locations. Using BLE technology, one device can confirm the presence of another device or determine the distance and direction between devices. In this disclosure, BLE technology may be briefly referred to as 'LE'.
[0005] In BLE technology, channel sounding (CS) refers to a BLE function that measures and distributes information that can be used to measure the distance between two devices. In this disclosure, this is referred to as BLE CS. BLE CS is performed in a 1:1 topology between two devices.
[0006] The present disclosure aims to provide a method and apparatus for extending a 1:1 topology of BLE channel sounding to 1:M or N:M (where N and M are integers greater than or equal to 2). Specifically, the present disclosure aims to provide a method for defining a new device role to extend BLE channel sounding to 1:M or N:M. Furthermore, the present disclosure aims to provide a method and apparatus for extending BLE channel sounding to 1:M or N:M to perform ranging and positioning solely by receiving a CS tone.
[0007] A method performed by a first device in a communication system supporting Bluetooth or BLE according to one aspect of the present disclosure may include: receiving a first signal transmitted by a second device in a second role; receiving a second signal transmitted to the second device by a device having index m among M devices in a third role, wherein M is a natural number greater than or equal to 2, m is an integer and m ∈ {1, 2, 3,..., M-1, M}, determining a first PCT (phase correction term) based on the first signal; determining a second PCT based on the second signal; determining the difference between (i) a first phase shift between the first device and the second device and (ii) a second phase shift between the first device and the device having index m based on the first PCT and the second PCT; and calculating the position of the first device based on the difference.
[0008] In a communication system supporting Bluetooth or BLE according to another aspect of the present disclosure, a first device in a first role comprises a transceiver and a control unit functionally connected to the transceiver, wherein the control unit receives a first signal transmitted by a second device in a second role and receives a second signal transmitted to the second device by a device having index m among M devices in a third role, wherein M is a natural number greater than or equal to 2, m is an integer and m ∈ {1, 2, 3,..., M-1, M}, determines a first PCT (phase correction term) based on the first signal and determines a second PCT based on the second signal, and determines the difference between (i) a first phase shift between the first device and the second device and (ii) a second phase shift between the first device and the device having index m based on the first PCT and the second PCT, and may be configured to calculate the position of the first device based on the difference.
[0009] According to one embodiment of the present disclosure, the positioning performance of the device can be improved.
[0010] In addition, according to one embodiment of the present disclosure, the cost of configuring a positioning system can be reduced by extending BLE channel sounding not only to a 1:M topology but also to an N:M topology.
[0011] The effects obtainable from the various embodiments of the present disclosure are not limited to those mentioned above, and other unmentioned effects can be clearly derived and understood by those skilled in the art based on the following detailed description.
[0012] FIG. 1 illustrates an example of the structure of an electronic device according to one embodiment of the present disclosure.
[0013] FIG. 2 illustrates an example of a wireless communication system according to one embodiment of the present disclosure.
[0014] Figure 3 illustrates the BLE protocol stack.
[0015] FIG. 4 illustrates a procedure for a BLE CS according to one embodiment of the present disclosure.
[0016] FIG. 5 illustrates the relationship between a CS procedure, a CS event, a CS subevent, and a CS step according to one embodiment of the present disclosure.
[0017] FIG. 6 illustrates a method for measuring a phase-based-ranging (PBR) distance according to one embodiment of the present disclosure.
[0018] Figure 7 illustrates the point in time when frequency hopping is performed in BLE CS.
[0019] FIG. 8 illustrates a scenario in which a third device exists in addition to the Initiator and Reflector.
[0020] Figure 9 illustrates a scenario in which multiple Passive Anchors exist.
[0021] Figure 10 illustrates the PCT relationship between the initiator, reflector, and passive anchor.
[0022] FIG. 11 illustrates a positioning system according to one embodiment of the present disclosure.
[0023] FIG. 12 illustrates an instance of a 1:M channel sounding step between an Initiative-anchor and reflect-anchors according to one embodiment of the present disclosure.
[0024] Figure 13 illustrates a method for determining the location of a passive-tag by utilizing the distance difference between the initiative-anchor and the reflect-anchor.
[0025] FIG. 14 illustrates an example of transmitting PCT-related information using BLE periodic advertising according to one embodiment of the present disclosure.
[0026] FIG. 15 illustrates a plurality of cluster chains according to one embodiment of the present disclosure.
[0027] FIG. 16 illustrates an example in which a CS procedure is performed in a cluster chain according to one embodiment of the present disclosure.
[0028] FIG. 17 is a flowchart of the operation of a first device according to one embodiment of the present disclosure.
[0029] Hereinafter, embodiments of the present disclosure will be described in detail with reference to the attached drawings.
[0030] In describing the embodiments, technical details that are well known in the art to which this disclosure belongs and are not directly related to this disclosure are omitted. This is intended to convey the essence of this disclosure more clearly without obscuring it by omitting unnecessary explanations.
[0031] For the same reason, some components in the attached drawings have been exaggerated, omitted, or schematically depicted. Additionally, the size of each component does not entirely reflect its actual dimensions. Identical or corresponding components in each drawing have been assigned the same reference numbers.
[0032] The advantages and features of the present disclosure and the methods for achieving them will become clear by referring to the embodiments described below in detail together with the accompanying drawings. However, the present disclosure is not limited to the embodiments disclosed below but may be implemented in various different forms. The embodiments of the present disclosure are provided merely to ensure that the present disclosure is complete and to fully inform those skilled in the art of the scope of the disclosure, and the present disclosure is defined only by the scope of the claims. Throughout the specification, the same reference numerals refer to the same components. Furthermore, the terms described below are defined considering their functions in the present disclosure, and these may vary depending on the intentions or conventions of the user or operator. Therefore, their definitions should be based on the content throughout the specification.
[0033] At this point, it will be understood that each block of the process flow diagrams and combinations of the flow diagrams can be executed by computer program instructions. Since these computer program instructions can be loaded into the processor of a general-purpose computer, a special-purpose computer, or other programmable data processing equipment, the instructions executed through the processor of the computer or other programmable data processing equipment create means to perform the functions described in the flow diagram block(s). Since these computer program instructions can also be stored in computer-available or computer-readable memory that can be directed toward the computer or other programmable data processing equipment to implement the function in a specific way, the instructions stored in computer-available or computer-readable memory can also produce a manufactured item containing means of instruction to perform the function described in the flow diagram block(s).
[0034] Since computer program instructions can be loaded onto a computer or other programmable data processing equipment, instructions that execute a computer or other programmable data processing equipment by performing a series of operation steps on the computer or other programmable data processing equipment to create a process executed by the computer may also provide steps for executing the functions described in the flowchart block(s).
[0035] Additionally, each block may represent a module, segment, or part of code containing one or more executable instructions for executing a specific logical function(s). It should also be noted that in some alternative execution examples, the functions mentioned in the blocks may occur out of order. For instance, two blocks described in succession may actually be executed substantially simultaneously, or the blocks may be executed in reverse order depending on the corresponding function.
[0036] In this embodiment, the term "part" refers to a software or hardware component such as a field programmable gate array (FPGA) or an application-specific integrated circuit (ASIC), and the "part" performs certain roles. However, the meaning of "part" is not limited to software or hardware. The "part" may be configured to reside in an addressable storage medium or may be configured to run one or more processors. Accordingly, according to some embodiments, the "part" includes components such as software components, object-oriented software components, class components, and task components, as well as processes, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuits, data, databases, data structures, tables, arrays, and variables. The functions provided within the components and "parts" may be combined into a smaller number of components and "parts" or further separated into additional components and "parts." In addition, the components and 'parts' may be implemented to utilize one or more CPUs within the device or secure multimedia card. Furthermore, according to some embodiments, the 'parts' may include one or more processors.
[0037] In the following, electronic devices will be described in various embodiments of the present disclosure, but electronic devices may be referred to as terminals, mobile stations, mobile equipment (ME), user equipment (UE), user terminals (UT), subscriber stations (SS), wireless devices, wireless terminals, access terminals (AT), handheld devices, access terminals (AT), wireless communication devices, wireless transmit / receive units (WTRU), mobile nodes, mobile devices, or other terms. Alternatively, in various embodiments of the present disclosure, the electronic device may include, for example, a mobile phone, a cellular phone, a personal digital assistant (PDA), a smartphone having wireless communication capabilities, a wireless modem, a laptop, earbuds, a portable computer having wireless communication capabilities, a photographic device such as a digital camera having wireless communication capabilities, a gaming device having wireless communication capabilities, a music storage and playback appliance having wireless communication capabilities, a home appliance having wireless communication capabilities, an internet appliance capable of wireless internet access and browsing, as well as portable units or terminals integrating combinations of such capabilities. In various embodiments of the present disclosure, the electronic device may be a device having communication capabilities (e.g., BLE communication capabilities). In the present disclosure, the electronic device may simply be referred to as a device.
[0038] In addition, while the various embodiments of the present disclosure are described in detail with reference to Bluetooth technology, they may also be applied to other communication systems having a similar technical background without significantly departing from the scope of the present disclosure, and this will be possible at the judgment of a person with skilled technical knowledge in the technical field of the present disclosure.
[0039] FIG. 1 illustrates an example of the structure of an electronic device according to one embodiment of the present disclosure.
[0040] Referring to FIG. 1, the electronic device (100) may include a processor (130) and a communication module (120).
[0041] The communication module (120) can receive signals from the outside or transmit signals to the outside based on the Bluetooth communication method. For example, the communication module (120) may include a transceiver (124) for transmitting and receiving data with an external device and a communication processor (122) (e.g., a communication processor (not shown), or a short-range wireless communication module (e.g., a Bluetooth chipset)). Depending on various embodiments, the communication module (120) may further include memory.
[0042] According to various embodiments, the transceiver (124) can convert a baseband transmission signal into a wireless signal or convert a received wireless signal into a baseband reception signal.
[0043] According to various embodiments, the communication module (120) may further include, in addition to the transceiver (124) and the communication processor (122), components for OFDM or OFDMA (orthogonal frequency division multiple access), such as a modulator, a digital-analog converter, a frequency converter, an A / D converter, an amplifier, and / or a demodulator.
[0044] The communication processor (122) can control the transceiver (124) to form a communication connection with another device. For example, the communication connection may include Bluetooth. For example, the communication processor (122) can control the transceiver (124) to form a wireless connection with another device using the Bluetooth protocol.
[0045] According to various embodiments, the processor (130) may include an application processor. The processor (130) may perform a specified operation of the electronic device (100) or control other hardware (e.g., a communication module (120)) to perform a specified operation.
[0046] Various embodiments of the present disclosure can be performed by the electronic device of FIG. 1.
[0047] FIG. 2 illustrates an example of a wireless communication system according to one embodiment of the present disclosure.
[0048] Referring to FIG. 2, a wireless communication system (200) may include a first device (210) and a second device (220). The first device (210) and the second device (220) may communicate with each other through a communication link (230). The communication link (230) may be connected using Bluetooth (e.g., BLE). The communication link (230) may include other wireless communication interfaces in addition to Bluetooth, such as Wi-Fi, LTE (long term evolution), and NR (new radio). Although FIG. 2 illustrates the wireless communication system as including the first device (210) and the second device (220), this is merely an example, and other devices other than the above devices may be included in the wireless communication system.
[0049] Bluetooth profiles define the general characteristics that a Bluetooth device uses to communicate with other Bluetooth devices. There are various types of Bluetooth profiles that describe different applications or use cases of the device. The following roles can be defined for devices implementing a Bluetooth profile: A client refers to a device capable of initiating commands and requests to a server and receiving responses, displays, and notifications sent by the server. A server is a device that accepts incoming commands and requests from clients and sends responses, displays, and notifications to clients.
[0050] A device performing the role of a server may operate as a client in relation to other devices, and a device performing the role of a client may operate as a server in relation to other devices. Any one device may operate as either a server or a client, and if necessary, it may also operate as both a server and a client simultaneously. For example, the first device (210) may perform the role of a client and the second device (220) may perform the role of a server. Alternatively, the first device (210) may perform the role of a server and the second device (220) may perform the role of a client.
[0051] In BLE, Generic Access Profiles (GAPs) can define the roles of a device. Specifically, GAPs define four specific roles: Broadcaster, Observer, Peripheral, and Central. A device can support multiple LE GAP roles if the underlying controller supports these roles or combinations of roles. Each role specifies requirements for the underlying controller, which allows the controller to be optimized for specific use cases.
[0052] The Broadcaster role is optimized for transmitter-only applications. Devices supporting the Broadcaster role can broadcast data using advertisements. The Broadcaster role does not support connections. The Observer role is optimized for receiver-only applications. Devices supporting the Observer role complement the Broadcaster and receive broadcast data contained in advertisements. The Observer role does not support connections. The Peripheral role supports a single connection and is optimized for devices that are less complex than Central. The Peripheral role uses the Link Layer Peripheral role within the connection. The Central role supports multiple connections and is the initiator for all connections with devices in the Peripheral role. The Central role uses the Link Layer Central role within the connection. Devices supporting the Central role can generally support more complex functions compared to other LE GAP roles.
[0053] For example, the first device (210) and the second device (220) of FIG. 2 can each serve as a Broadcaster, Observer, Peripheral, or Central.
[0054] BLE advertising refers to the operation of announcing a device's information (e.g., device name, MAC address, transmission power, etc.) to nearby BLE devices acting as GAP centrals. In the advertising state, the device sends packets containing useful data that other devices can receive and process.
[0055] Physical channels are subdivided into time units known as events. Data is transmitted between LE devices in packets placed within these events. The following types of events exist: advertisements, extended advertising, periodic advertising, connections, isochronous events (divided into broadcast isochronous stream (BIS), broadcast isochronous group (BIG), connected isochronous stream (CIS), and connected isochronous group (CIG) events), and channel sounding events.
[0056] Packets can be transmitted at fixed intervals defined by the Advertising Interval. BLE has 40 RF channels, each separated by 2 MHz (center-to-center). Of the 40 channels, 3 are called primary advertising channels (designated as 37, 38, and 39), and the remaining 37 channels are called secondary advertising channels (also used for data transmission during the connection). Secondary advertising channels are used as "auxiliary" channels; that is, a device must advertise on a primary advertising channel first before sending an advertisement packet on a secondary channel. To utilize a secondary advertising channel, a device sends an advertisement packet to the primary channel that points to the secondary advertisement packet.
[0057] Devices that transmit ad packets in an ad PHY channel can be referred to as advertisers. Devices that receive ad packets in an ad PHY channel without intending to connect to an ad device can be referred to as scanners. Transmission in an ad PHY channel occurs during an ad event. At the start of each ad event, the advertiser sends an ad packet corresponding to the type of ad event. Depending on the type of ad packet, the scanner may make a request to the advertiser in the same ad PHY channel, and subsequently, a response from the advertiser may be received in the same ad PHY channel.
[0058] For example, the first device (210) may be an advertiser and the second device (220) may be a scanner, or vice versa.
[0059] In Bluetooth technology, channel sounding (CS) refers to a BLE function that measures and distributes information that can be used to measure the distance between devices. In this disclosure, this is referred to as BLE CS.
[0060] In BLE CS, two device roles can be distinguished: the Initiator refers to the device that intends to calculate the distance between itself and another device, and corresponds to the device that transmits first during the channel sounding phase. The other device subject to distance measurement may be referred to as the Reflector, and corresponds to the device that transmits second during the channel sounding phase in response to the Initiator's transmission.
[0061] BLE CS operates in a 1:1 topology, allowing communication to take place between a device acting as an initiator and a device acting as a reflector. The initiator role can be performed by a device operating as a Link Layer LE Central or LE Peripheral. The reflector role can also be performed by a device operating as a Link Layer LE Central or LE Peripheral. For one device to act as the initiator and the other as the reflector, both devices must include a Bluetooth LE controller that supports BLE CS functionality.
[0062] For example, when BLE CS is performed to measure the distance between the first device (210) and the second device (220), the first device (210) may act as the initiator and the second device (220) may act as the reflector, or the first device (210) may act as the reflector and the second device (220) may act as the initiator.
[0063] Figure 3 illustrates the BLE protocol stack.
[0064] Referring to FIG. 3, the BLE protocol stack consists of a host (350) and a controller (300). The host (350) may include a logical link control and adaptation protocol (L2CAP) (355), an attribute protocol (ATT) (360), a security manager (SMP) (365), a generic attribute profile (GATT) (370), and a generic access profile (GAP) (375) block. However, the host is not limited thereto and may include various protocols and profiles. The controller (300) may include a physical layer (PHY) (310), a link layer (315), and an isochronous adaptation layer (ISOAL) (320). However, the controller is not limited thereto and may include various protocols and profiles. The host controller interface (HCI) (330) provides an interface for bidirectional communication of commands and data between the host component and the controller. Although the HCI is illustrated in FIG. 3, the use of the HCI is optional and other interfaces may be used.
[0065] The physical layer (PHY) block (310) is a block responsible for transmitting and receiving information packets on a physical channel and transmits and receives 2.4 GHz radio signals. Through a control path between the baseband and the PHY block, the baseband block can control the timing and frequency carrier of the PHY block. The PHY block converts the data stream between the physical channel and the baseband into the required format. All aspects of Bluetooth technology related to radio (RF) usage, including modulation scheme, frequency band, channel usage, and transmitter and receiver characteristics, can be defined in the PHY block.
[0066] The link layer (LL) block (315) defines the air interface packet format, bit stream processing procedures such as error checking, state machine and wireless communication protocol, and link control. It defines various unique methods for using basic radio for connectionless, connection-oriented, and synchronous communication.
[0067] ISOAL (320) enables devices using isochronous channels to use different frame durations. ISOAL uses arrangement / recombination or segmentation / reassembly operations to convert upper-layer data units into lower-layer data units (or vice versa). This allows the upper layer to flexibly exchange isochronous data with the link layer.
[0068] L2CAP (355) may include a channel manager and an L2CAP resource manager. The channel manager is responsible for creating, managing, and closing L2CAP channels to transmit service protocols and application data streams. The channel manager interacts with the channel manager of a remote (peer) device using the L2CAP protocol to create these L2CAP channels and connect endpoints to the appropriate entities. The channel manager interacts with the local link manager to create new logical links (if necessary) and configure these links to provide the quality of service required for the type of data being transmitted. The L2CAP resource manager block manages the order in which PDU fragments are submitted to the baseband and is responsible for relative scheduling between channels to ensure that L2CAP channels with quality of service (QoS) commitments are not denied access to physical channels due to controller resource exhaustion. The L2CAP resource manager may also perform traffic conformity policing to ensure that applications submit L2CAP SDUs within the range of negotiated QoS settings.
[0069] ATT (360) is a peer-to-peer protocol between an ATT server and an ATT client. ATT is used to retrieve and use data held by the ATT server in a logical data structure known as an attribute table. The ATT client communicates with the ATT server on a remote device through a dedicated static L2CAP channel. The ATT client sends a request to the ATT server, and in response to the request, the ATT server may respond to the ATT client. The ATT server sends an indication to the ATT client, and the ATT client sends a conformation to the ATT server regarding the indication. The ATT client may send a command to the ATT server. The ATT server may send a notification to the ATT client. These commands and requests from the ATT client provide a means to read and write attribute values of the peer device where the ATT server is located.
[0070] SMP (365) is a peer-to-peer protocol used to generate encryption keys and ID keys. This protocol operates on a dedicated fixed L2CAP channel. Additionally, the SMP block manages the storage of encryption keys and ID keys, generates random addresses, and converts random addresses into known device IDs. The SMP block interfaces with the controller to provide the stored keys used for encryption and authentication during the encryption or pairing process.
[0071] The GATT (370) block represents the functions of an ATT server and optionally an ATT client. The GATT describes the hierarchy of services, characteristics, and attributes used by the ATT server. The GATT block provides an interface for retrieving, reading, writing, and displaying service characteristics and attributes, and the GATT is used on the LE device for LE profile service retrieval.
[0072] GAP (375) defines operating modes and procedures that can be used in a disconnected state. For example, GAP defines methods for using advertisements for disconnected communication and device discovery, security levels, and some user interface standards.
[0073] BLE CS can calculate distance at the application layer using data provided by the Bluetooth controller. This data is collected by the controller during the execution of the BLE CS procedure and is the result of signal exchanges and measurements performed by each device. The data is passed to the application layer in HCI events. Additionally, the application layer serves to provide configuration options and default settings to the Bluetooth controller, which are used to establish a suitable BLE CS configuration supported by the applications of both devices.
[0074] FIG. 4 illustrates a procedure for a BLE CS according to one embodiment of the present disclosure.
[0075] In FIG. 4, it is assumed that the first device acts as the link layer LE Central and the second device acts as the link layer LE Peripheral. Additionally, some of the operations in FIG. 4 may be omitted depending on the case. For example, in FIG. 4, the first device may act as the initiator and the second device as the reflector, or the first device may act as the reflector and the second device as the initiator.
[0076] Before starting BLE CS, the first device must connect to the second device. Subsequently, security is initiated in the LE-ACL (asynchronous connection-oriented logical transport) connection, and a secure transport may be provided to exchange various link layer protocol data units (PDUs) during the various procedures to prepare and start BLE CS.
[0077] Referring to FIG. 4, a CS security start procedure may be performed in operation 410. In the CS security start procedure, the first device may generate three random numbers and transmit them to the second device in the LL_CS_SEC_REQ PDU. For example, parameters representing the three random numbers generated by the first device may be represented as an initialization vector (CS_IV_C) generated by Central, an instantiation nonce (CS_IN_C) generated by Central, and a personalization vector (CS_PV_C) generated by Central, respectively. The second device may generate three of its own random numbers according to the same rules as the random numbers of the first device and transmit them back to the first device in the LL_CS_SEC_RSP PDU. For example, parameters representing three random numbers generated by the second device can be represented by an initialization vector (CS_IV_P) generated by the Peripheral, an instantiation nonce (CS_IN_P) generated by the Peripheral, and a personalization vector (CS_PV_P) generated by the Peripheral, respectively. If both devices possess the entire set of CS security parameters, the values of each Central / Peripheral pair can be connected by the corresponding link layer. As a result, both devices may possess the same values for the three CS security parameter initialization vectors (CS_IV), instantiation nonce (CS_IN), and personalization vector (CS_PV). CS_IV, CS_IN, and CS_PV can be used as inputs to a Deterministic Random Bit Generator (DRBG) and as fundamental components of the Bluetooth Channel Sounding security function.Security can be applied to BLE CS by using DRBG to randomize specific aspects of the CS bit stream and transmission scheduling.
[0078] In operation 420, the two devices may exchange information regarding each device's CS capabilities. Specifically, the first device may send details regarding its CS capabilities to the second device in an LL_CS_CAPABILITIES_REQ PDU, and the second device may respond with details in an LL_CS_CAPABILITIES_RSP PDU and transmit them to the first device. Although the above description describes the first device initiating this procedure first, the second device may perform the CS capability exchange procedure first. Alternatively, the device may choose not to exchange capability information with the other device by caching previously received capability data. For example, the information regarding the CS capabilities may include PHY support, round trip time (RTT) accuracy, whether BLE CS mode-3 is supported, attack detection support, and the maximum number of supported antenna paths.
[0079] In operation 430, the first device and the second device may exchange CS settings with each other. The procedure for exchanging CS settings may include the exchange of LL_CS_CONFIG_REQ and LL_CS_CONFIG_RSP PDUs. Using previously exchanged functions, this procedure enables the device to select a specific setting to be used. The host may assign an identifier to each setting. This identifier must be unique among the identifiers used by the devices in this pair and may be used to refer to a set of parameters specified during link layer procedures. The application of the device sending the LL_CS_CONFIG_REQ PDU may choose to assume the role of Initiator or Reflector. The other device must respond with LL_CS_CONFIG_RSP and assume the other role.
[0080] When BLE CS security is initiated, the devices possess information about each other's functions, and the devices agree to the appropriate configuration, the CS initiation procedure can be performed in operation 440. The CS initiation procedure can be performed via LL_CS_REQ, LL_CS_RSP, and LL_CS_IND PDUs. The CS initiation procedure can be initiated by transmitting an LL_CS_REQ PDU. If a device in the Peripheral role can accept the parameters within the received LL_CS_REQ PDU or selects alternative parameters for those parameters, it may respond with an LL_CS_RSP PDU. If a device in the Central role receives an LL_CS_REQ PDU or an LL_CS_REQ PDU, it may prepare to initiate the CS procedure by transmitting an LL_CS_IND PDU. The LL_CS_REQ and LL_CS_RSP PDUs may contain the proposed timing and structural parameters of each device. These parameters can control how time is divided and how time is used during BLE CS. LL_CS_IND indicates that BLE CS should now be started and contains parameter values allowed on both devices according to the proposal included in the previous PDU exchange.
[0081] After the CS start procedure of operation 440 is completed, the CS procedure can be performed in operation 450. During this process, the two devices can exchange RF signals to perform measurements that can be used in the application for distance calculation.
[0082] The time structure of the CS procedure of operation 450 is explained in detail below.
[0083] FIG. 5 illustrates the relationship between a CS procedure, a CS event, a CS subevent, and a CS step according to one embodiment of the present disclosure.
[0084] Referring to FIG. 5, the time structure of the BLE CS can be hierarchically organized into a procedure (510), an event (520), a sub-event (530), and a step (540).
[0085] A CS procedure refers to a group of series of CS events that proceed sequentially for the purpose of collecting information useful for estimating the distance between two devices. A CS event represents a group of fixed CS sub-events within a common LE connection event. A CS sub-event represents a group of CS steps associated with a specific coherent timing. A CS step signifies an individual exchange between two devices in channel sounding.
[0086] The CS procedure (510) may consist of one or more CS events, and the CS events may consist of one or more CS sub-events, and the CS sub-events may consist of two or more CS stages. Within a CS sub-event, the first CS stage may be used to provide correction information for the remaining CS stages within that CS sub-event.
[0087] RF signal exchange between the initiator and the reflector may occur within a single step. The initiator transmits first in each step, followed by one or more transmissions from the reflector. That is, packets (CS_SYNC packets) or tones (CS_TONE) may be transmitted and received within a step. For example, each device may transmit a packet (CS_SYNC packet), a tone (CS_TONE), or both a packet (CS_SYNC packet) and a tone (CS_TONE) together within a single step, depending on the purpose.
[0088] The packet (CS_SYNC packet) may contain a GFSK (Gaussian Frequency Shift Keying) modulation-based signal, and the tone (CS_TONE) may be an ASK (amplitude shift keying) modulation-based signal.
[0089] Exchanges within the CS phase use PHY channels determined using a channel selection algorithm. The LE CS PHY channel can be characterized as a pre-negotiated exchange sequence that constitutes the CS procedure. For channel sounding, this channel selection algorithm and other security-related information are seeded using a Deterministic Random Bit Generator (DRBG). Specifically, the DRBG is used to generate the content of the CS access address and the payload content. Additionally, the DRBG is used to influence the modulated content of tone transmissions. Furthermore, the DRBG is used to seed the selection of pseudo-random sequences of PHY channels used in the channel hop sequence of the channel sounding procedure. The security key material of this DRBG is known only to the corresponding initiator and reflector.
[0090] Four types are defined for the CS phase, and they can be classified as Mode-0, Mode-1, Mode-2, and Mode-3. Each mode can be used for a specific purpose.
[0091] Specifically, Mode-0 is used to calibrate one device to another in terms of frequency and timing. When set to Mode-0, the CS phase can be used for frequency offset and gain calibration between devices. In Mode-0, the initiator can transmit a CS_SYNC packet on a selected channel and frequency. The Reflector can respond with a CS_SYNC packet and a CS tone, both of which are transmitted at the same frequency as the signal received from the initiator. The CS_SYNC packet provides the initiator with a preamble that allows it to tune the receiver and calibrate the gain. The CS tone is used as a reference for measuring the frequency offset.
[0092] Mode-1 is used to exchange Round-Trip Time (RTT) packets. When set to Mode-1, the Round-Trip Timing (RTT) of CS_SYNC packets transmitted from the initiator to the reflector and returning can be calculated. The initiator records a timestamp when transmitting the initial CS_SYNC packet, which is called the Time of Departure (ToD). The initiator may record a second timestamp when receiving the CS_SYNC packet transmitted back from the reflector, which is called the Time of Arrival (ToA). The RTT can be calculated based on the ToA and ToD, and the initiator can estimate the distance between the initiator and the reflector based on the calculated RTT.
[0093] Mode-2 is used to support phase-based ranging (PBR). Mode-2 can be initiated by the initiator transmitting a CS tone through the selected channel and each available antenna path. After a ramp-down time and an intermediate period, the reflector selects the same frequency as the tone received from the initiator and responds with a CS tone through each antenna path. When set to Mode-2, the CS phase is used to exchange phase-based ranging (PBR) CS tones to measure the phase and amplitude of the communication channel.
[0094] The initiator can measure the phase of the CS tone received from the reflector once for each antenna path. Adjustment can be performed using the compensation value calculated in the Mode-0 stage. The phase measurement can be transmitted from the HCI event to the application layer in the form of an IQ sample array. Support for the Mode-2 stage is mandatory in BLE CS.
[0095] Mode-3 is a method that supports both RTT calculation and PBR by combining and exchanging CS_SYNC packets and CS tones. Mode-3 support is optional and may vary depending on the device.
[0096] Three Channel Selection Algorithms (CSAs) have been defined for use in BLE CS. These are collectively referred to as CSA #3, and are individually denoted as CSA #3a, CSA #3b, and CSA #3c. CSA #3a is used exclusively for selecting the channel to be used in the Mode-0 phase. Both CSA #3b and CSA #3c are designed for use with non-Mode-0 phases, but only one of them can be used in a BLE CS procedure instance.
[0097] Channel selection includes two separate lists of channel indices. The first is used for channel selection in the CSA #3a and Mode-0 stages, and the second is used in the non-Mode-0 stages with CSA #3b or CSA #3c. The list of channel indices is created by creating a shuffled channel list by randomly assigning the order of the channels marked as included in the channel map.
[0098] The Mode-0 channel selection algorithm CSA #3a uses a shuffled channel list. The shuffled channel list used for Mode-0 stage frequency hopping is distinguished from the corresponding channel list used for non-Mode-0 channel hopping, and each item in the shuffled channel list is unique and used only once. When all items in the shuffled channel list are used, the channel list is regenerated.
[0099] CSA #3b, a non-mode-0 channel selection algorithm, uses a shuffled channel list distinct from the corresponding channel list used for mode-0 channel hopping. CSA #3b may repeat two or more times before regenerating the channel index list, which is controlled by a parameter called CSNumRepetitions that can be set by the application.
[0100] In CSA #3c, a subset of channels included in the channel map is organized into groups, and channel patterns are generated to form shapes. CSA #3c can provide several advantages in detecting reflected signal paths in some situations.
[0101] As described in the four types of CS steps above, BLE CS includes (i) a method of measuring location based on phase difference at different frequencies and (ii) a method of measuring location based on round-trip timing (RTT). (i) The method of measuring location based on phase difference at different frequencies can be expressed as Phase-based ranging (PBR) and is a method focused on accuracy. On the other hand, (ii) the method of measuring location based on RTT can be understood as a method focused on security.
[0102] Since the propagation speed of electromagnetic waves is constant, the distance traveled by the electromagnetic waves can be determined by knowing the phases of the transmitted (Tx) and received (Rx) signals and the wavelength (the reciprocal of the frequency). The PRB method utilizes this concept. In this case, the signal phase is measured within the range [0, 2π], and the same phase repeats as the signal travels a distance equal to one wavelength. Therefore, if the measured distance exceeds the wavelength of the signal at the corresponding frequency, the distance measurement result based on the phase difference between Tx and Rx may not be valid.
[0103] To solve this problem, the phase difference results of signals measured at different frequencies can be combined. The combined signal can achieve the same effect as measuring distance using a single signal with an amplified wavelength. Specifically, although the wavelength of a signal of frequency f is c / f (where c is the speed of light (299,792,458 m / s)), using two frequencies f and f' allows the virtual wavelength to be increased to c / (f-f'), thereby increasing the effective range of distance measurement. For example, when f=2402 MHz and f'=2404 MHz, the wavelength of f is approximately 0.12 m, but the virtual wavelength c / (f-f') increases to approximately 149.90 m.
[0104] FIG. 6 illustrates a method for measuring a phase-based-ranging (PBR) distance according to one embodiment of the present disclosure.
[0105] Referring to FIG. 6, Device A can transmit a signal at a known frequency f1. Device A knows the initial phase of this signal. Device B receives the signal at frequency f1 from an antenna and can verify the phase of the received signal. Subsequently, Device B transmits a signal at the same frequency f1, wherein Device B can set the initial phase of the transmitted signal to be the same as the phase of the received signal. As a result, the signal returned by Device B can be continuous with the signal received by Device A in terms of phase and frequency. Device A can measure the received phase of the signal from Device B, and this value is P f1 It can be represented as.
[0106] Device A can select a new frequency f2 and transmit a signal at frequency f2. Device B receives the signal at frequency f2 from an antenna and can verify the phase of the received signal. Subsequently, Device B transmits a signal at the same frequency f2, wherein Device B can set the initial phase of the transmitted signal to be the same as the phase of the received signal. As a result, the signal returned by Device B can be continuous with the signal received by Device A in terms of phase and frequency. Device A can measure the new phase for the signal received from Device B, and this is P f2 It can be represented as.
[0107] Device A is the difference in phase values, P, measured for frequencies f1 and f2, respectively. f2 - P f1 The distance (r) between device A and device B can be calculated. If the phase difference and the difference between frequencies f1 and f2 are known, the distance (r) between device A and device B can be calculated using Equation 1.
[0108] [Mathematical Formula 1]
[0109]
[0110] In Equation 1, c is the speed of light (299,792,458 m / s), and P f is the phase measured at frequency f and falls within the range [0, 2π]. Also, (P f2 - P f1 ) is the phase difference and (f2 - f1) represents the frequency interval. “mod” means modulo operation.
[0111] However, although the phase value changes as the distance increases, it is periodic; therefore, when the phase value reaches (2 * π) radians, it resets to 0, and the same value begins to repeat. As mentioned above, the phase of the signal is measured in the range of (0, 2π), and since the same phase repeats as the signal travels every wavelength distance, an ambiguity issue may arise regarding distance measurement using phase difference. This can cause ambiguity in determining the distance between two devices, as the same phase difference value can imply two or more distances. This can be referred to as distance ambiguity.
[0112] The occurrence of distance ambiguity can vary depending on frequency separation. Generally, the larger the difference between the two frequencies (f2 - f1), the smaller the effective range of phase difference-based distance measurements becomes.
[0113] In mathematical formula 1, Therefore, r will have a value smaller than c / (f2-f1). Thus, if the actual distance (d) is greater than the virtual wavelength c / (f2-f1), the accuracy of ranging (r) may be reduced.
[0114] Furthermore, phase measurement results may be inaccurate due to the influence of frequency offset caused by the difference in center frequencies between the transmitting and receiving devices. Specifically, the closer the distance between the center frequencies of the two channels (f2-f1), the greater the error caused by frequency offset tends to be.
[0115] Bluetooth Classic technology uses 79 channels separated into 1 MHz intervals within the 2.4 GHz (e.g., 2400 MHz to 2483.5 MHz) frequency band. For data transmission, the FDMA (frequency division multiple access) method of BLE technology uses 40 physical channels separated into 2 MHz intervals within the 2.4 GHz frequency band. Of the 40 channels, 3 are used as primary ad channels and 37 are used as general-purpose channels (including secondary ad channels).
[0116] On the other hand, BLE CS was performed by hopping 72 channels, excluding 7 channels that overlap with the BLE primary channel, out of 79 channels separated by 1 MHz intervals in the 2.4 GHz frequency band. For BLE CS, 72 channels, each with a width of 1 MHz and a unique channel index value, can be defined as shown in Table 1.
[0117] Table 1 shows the 72 channels used for BLE CS.
[0118] CS Channel IndexRF center FrequencyAllowed02402 MHzNo12403 MHzNo22404 MHzYes.........222424 MHzYes232425 MHzNo242426 MHzNo252427 MHzNo262428 MHzYes.........762478 MHzYes772479 MHzNo782480 MHzNo
[0119] Referring to Table 1, "Allowed" in the third column indicates whether the channel can be used for BLE CS. This arrangement of channels is intended to prevent the LE default ad channel from being used for BLE CS. By using a 1 MHz channel bandwidth for BLE CS, distances can be measured without distance ambiguity up to a maximum distance of approximately 150 m when using PBR. On the other hand, if a 2 MHz channel bandwidth is used, the maximum range of the effective measurement distance is reduced to approximately 75 m.
[0120] The BLE CS channel map is based on the list of channel indices defined in Table 1, and each channel can be marked as included or excluded. The BLE CS channel map is maintained by a link layer procedure called the CS channel map update procedure, through which an initiator or reflector can notify other devices of channels to use or avoid based on an evaluation of the local channel status. Excluded channels are not selected by the channel selection algorithm.
[0121] Figure 7 illustrates the point in time when frequency hopping is performed in BLE CS.
[0122] Referring to Fig. 7, frequency hopping in BLE CS can be performed before the execution of each step.
[0123] Meanwhile, BLE CS is performed one-to-one between the Initiator and the Reflector, but a third device may receive the signal exchange (e.g., CS SYNC or CS tone) between the Initiator and the Reflector.
[0124] FIG. 8 illustrates a scenario in which a third device exists in addition to the Initiator and Reflector.
[0125] Referring to FIG. 8, a third device can receive signals (e.g., CS SYNC or CS tone) exchanged between an Initiator and a Reflector in a BLE CS. The third device may be referred to as a Passive Anchor. The Passive Anchor can receive signals transmitted by the Initiator to the Reflector and signals transmitted by the Reflector to the Initiator. In this case, the Passive Anchor needs to perform time and frequency alignment / synchronization with the Initiator and the Reflector in advance. For example, the Passive Anchor may belong to a positioning infrastructure. The Passive Anchor can perform TDOA (time difference of arrival)-based distance measurement based on signals received from the Initiator and the Reflector, respectively, and can transmit measurement information to a device responsible for positioning calculation (e.g., Initiator, Reflector, or a third remote device). This information transmission can be carried out via wired or wireless protocols.
[0126] In Fig. 8, the case where there is one Passive Anchor is illustrated as an example, but there may be multiple Passive Anchors.
[0127] Figure 9 illustrates a scenario in which multiple Passive Anchors exist.
[0128] The measuring infrastructure may consist of an initiator, a reflector, and multiple passive anchors. Referring to FIG. 9, it can be assumed that there is one reflector (index 0) and three passive anchors (index 1 to index 3). Although FIG. 9 illustrates the existence of three passive anchors, this is merely an example, and the number of passive anchors may be two or more. The initiator can be assumed to be the target of positioning. Additionally, the one reflector (index 0) and the three passive anchors (index 1 to index 3) are included in the positioning system and can be assumed to have fixed positions.
[0129] The measurement infrastructure may include an active node and one or more passive nodes. The active node can be an Initiator or a Reflector, and the passive nodes can be passive anchors. In the example of FIG. 9, it is assumed that the Reflector is the active node. A remote node refers to a node whose relative location to the measurement infrastructure is unknown. A remote node can act as an Initiator or a Reflector. In the example of FIG. 9, it is assumed that the Initiator is the remote node.
[0130] The distance from the initiator to the reflector is d a It can be represented as. A 1:1 CS procedure can be performed between the Initiator and the Reflector, through which the distance d between the Initiator and the Reflector can be achieved. a You can know.
[0131] The Reflector and Passive Anchor can be assumed to have fixed positions. The distance between the Reflector and each passive anchor 1, 2, and 3 is d b1 , d b2 , d b3 It can be represented as such, and can be assumed to be systematically predetermined.
[0132] The distance from the remote node to manual nodes 1, 2, and 3 is d c1 , d c2 , d c3 It can be displayed as.
[0133] The Initiator can identify the local phase-correction term (PCT) through a 1:1 communication with the reflector and transmit the identified local PCT to the collector node. Passive anchors can also identify the PCT based on received signals and transmit information about the identified PCT to the collector node. The collector node is the entity that performs distance / location calculations and can be a reflector or another node. In the example of Fig. 9, it is assumed that the reflector is the collector node. The collector node can calculate distance / location by collecting PCT values from each of the passive anchors and the initiator.
[0134] Figure 10 illustrates the PCT relationship between the initiator, reflector, and passive anchor.
[0135] In Fig. 10, I represents the Initiator, R represents the Reflector, and p is the index of the Passive Anchor, which can be expressed as an integer from 1 to P.
[0136] Referring to FIG. 10, all nodes involved in the communication can start measurements at any local phase of the local oscillator (LO) (non-coherent configuration). The local phase is denoted by Ψ, where Ψ I represents the LO local phase of the initiator, and Ψ R represents the LO local phase of the reflector, and Ψ p represents the LO local phase of a passive anchor with index p. The LO local phase can also be expressed as a phase shift of the LO. represents the phase shift of the signal between the reflector and the initiator. represents the phase change of the signal between the initiator and the passive anchor p. represents the phase change of the signal between the reflector and the passive anchor p.
[0137] Referring to Fig. 10, PCT I represents the phase of the signal measured at the initiator for the signal transmitted from the reflector, and is equal to Equation 2.
[0138] [Mathematical Formula 2]
[0139]
[0140] PCT R represents the phase of the signal measured at the reflector for the signal transmitted from the initiator, and is given by Equation 3.
[0141] [Mathematical Formula 3]
[0142]
[0143] Based on mathematical equations 2 and 3, = PCT I + PCT RIt is equal to, and this is equivalent to the phase change during RTT. Based on this, the physical distance between the initiator and the reflector can be estimated.
[0144] PCT Rp represents the phase of the signal measured at passive anchor p for the signal transmitted from the reflector, and is given by Equation 4.
[0145] [Mathematical Formula 4]
[0146]
[0147] PCT Ip represents the phase of the signal measured at passive anchor p for the signal transmitted from the initiator, and is given by Equation 5.
[0148] [Mathematical Formula 5]
[0149]
[0150] As described above, BLE CS was used to measure the relative distance between devices based on a one-to-one connection between an Initiator and a Reflector. Based on this, the absolute location of a specific device can be estimated through multivariate measurement with three or more nodes. However, signaling overhead for positioning may increase as the number of adjacent nodes and devices whose locations are to be measured increases. Additionally, delays may occur in positioning calculations through real-time data collection.
[0151] To solve the above-mentioned problems and to achieve accurate positioning beyond distance measurement between two devices, the present disclosure below describes a method for extending a BLE CS procedure in a 1:1 topology to 1:M or N:M (where N and M are integers greater than or equal to 2).
[0152] In a 1:1 topology BLE CS, the roles of the devices are defined as Initiator and reflector; however, to extend this to 1:M or N:M, it is necessary to define new device roles. In this disclosure, the device performing the role of an Initiator that measures distance in a BLE CS is referred to as an Initiative-anchor. The device performing the role of a reflector, which is the target of distance measurement in BLE channel sounding, is referred to as a Reflect-anchor. Additionally, the device calculating positioning according to an embodiment of this disclosure is referred to as a Passive-tag. However, these terms are merely examples for convenience of explanation and may be referred to by other terms. For example, the Initiative-anchor may be referred to as an Initiator, the Reflect-anchor as a Reflector, and the Passive-tag as a Tag. Each of the Initiative-anchor, Reflect-anchor, and Passive-tag may have or include the device structure of FIG. 1.
[0153] FIG. 11 illustrates a positioning system according to one embodiment of the present disclosure.
[0154] Referring to FIG. 11, the positioning system may include an initiative-anchor I (1110), at least one reflect-anchor (1120-1, 1120-2, 1120-3), and at least one passive-tag (1130-1, 1130-2). In the example of FIG. 11, three reflect-anchors and two passive-tags are shown, but the number of each device may be changed.
[0155] For example, the Initiative-anchor I (1110) and at least one reflect-anchor (1120-1, 1120-2, 1120-3) within the positioning system may have fixed positions, and the passive-tag may know the position of each anchor in advance. Information about the position of each anchor may be used when the passive-tag calculates the position.
[0156] 1:M channel sounding can be performed between initiative-anchors and reflect-anchors. The 1:M channel sounding protocol can vary. In this process, it is assumed that passive-tags are time- and frequency-aligned (synchronized) with the anchors. Additionally, it is assumed that the channel hopping sequence and CS mode configuration between the anchor and tag are synchronized because they share the CS_value, which serves as the seed for the DRBG. This synchronization can be achieved through in-band advertisements or out-of-band (OOB).
[0157] FIG. 12 illustrates an instance of a 1:M channel sounding step between an Initiative-anchor and reflect-anchors according to one embodiment of the present disclosure.
[0158] There may be one or more Reflect-anchors, and m (1 ≤ m ≤ M) represents the index of the Reflect-anchor. Initiative-anchor I can perform CS with each Reflect-anchor.
[0159] In the CS phase instance, Initiative-anchor I can transmit a CS tone. This CS tone can be received by each reflect-anchor. Each reflect-anchor can transmit CS tones sequentially. The transmission order among reflect-anchors may be predefined. The transmission of CS tones by each reflect-anchor may be performed in different time units (e.g., slots). That is, the transmission of CS tones by each reflect-anchor may not overlap in the time domain.
[0160] In the BLE CS procedure of a 1:1 topology, one initiator within a single stage instance transmits a CS tone and one reflector transmits a CS tone. However, in the case of the method proposed in this disclosure, multiple reflect-anchors can transmit a CS tone within a single stage instance.
[0161] Each step can begin with a frequency change interval (T_FC). During T_FC, frequency hopping may occur, thereby changing the channel. Frequency hopping may be based on the 72 channels of the frequency bands in Table 1 described above.
[0162] For example, in the positioning system of FIG. 11, when Initiative-anchor I (1110) transmits a CS tone within a step, reflect-anchor (1120-1, 1120-2, 1120-3) can receive it. Subsequently, reflect-anchor (1120-1, 1120-2, 1120-3) can each transmit a CS tone. Subsequently, frequency hopping is performed during T_FC so that Initiative-anchor I (1110) transmits a CS tone on a different frequency channel, and reflect-anchor (1120-1, 1120-2, 1120-3) can each transmit a CS tone.
[0163] Passive-tag T can receive CS tones exchanged during CS between Initiative-anchor I and each Reflect-anchor while CS is being performed. Passive-tag T can calculate the phase difference with the anchors based on the signals it received (i.e., CS tones).
[0164] The phase of the signal measured by Passive-tag T for the signal transmitted from Initiative-anchor I at frequency channel k is given by Equation 6.
[0165] [Mathematical Formula 6]
[0166]
[0167] The phase of the signal measured by Passive-tag T for the signal transmitted from Reflect-anchor m in frequency channel k is given by Equation 7.
[0168] [Mathematical Formula 7]
[0169]
[0170] Based on the above mathematical formulas 6 and 7, mathematical formula 8 can be derived.
[0171] [Mathematical Formula 8]
[0172]
[0173] PCT in mathematical formulas 6 through 8 AB [k] represents the phase of the signal measured at device B for a signal transmitted from device A at frequency channel k, and represents the phase shift of the transmitted and received signals between device A and device B at frequency channel k, and represents the local phase of the local oscillator of device A at frequency channel k.
[0174] In mathematical formula 8 and are the local phases of the local oscillators of the initiative-anchor and reflect-anchor, respectively, and assuming that the difference between the two values is not large, The value may be ignored. Passive-tag T can perform positioning based on the measured phase. Specifically, for each passive-tag, for all reflector-anchors and multiple channels Information can be obtained. Since the phase shift according to the distance traveled by an electromagnetic wave can be expressed as (2πd / λ) mod (2π) (where d is the distance traveled by the electromagnetic wave and λ is the wavelength of the electromagnetic wave), the passive tag T can obtain the phase difference measured or acquired from multiple frequency channels (indexed by k). The distance d between the initiative-anchor and the reflect-anchor IT -d mT It can be converted to. Here, d IT represents the distance between the initiative-anchor and the passive-tag, and d mTrepresents the distance between the reflect-anchor and the passive-tag. Fig. 13 illustrates a method for determining the location of the passive-tag by utilizing the distance difference between the initiative-anchor and the reflect-anchor. By utilizing the distance difference between the initiative-anchor and the reflect-anchor, a hyperbola as shown in Fig. 13 (a) can be obtained. The location of the passive-tag T can be estimated through multivariate surveying as shown in Fig. 13 (b) by converting the phase difference for multiple channels into a distance difference and utilizing the distance difference between multiple initiative-anchors and reflect-anchors.
[0175] Meanwhile, in the above explanation Positioning was performed without considering the parameter because it was assumed that it had little influence on location calculation, but Positioning may also be performed by applying .
[0176] It can be derived from the CS tone exchange between Initiative-anchor I and Reflect-anchor m.
[0177] For a signal transmitted from Initiative-anchor I at frequency channel k, the phase of the signal measured at Reflect-anchor m is given by Equation 9.
[0178] [Mathematical Formula 9]
[0179]
[0180] For a signal transmitted from Reflect-anchor m at frequency channel k, the phase of the signal measured at Initiative-anchor I is given by Equation 10.
[0181] [Mathematical Formula 10]
[0182]
[0183] Based on mathematical formulas 9 and 10, mathematical formula 11 can be derived.
[0184] [Mathematical Formula 11]
[0185]
[0186] PCT in Equations 9 through 11 AB [k], , Each can follow the definitions described above.
[0187] The Initiative-anchor applies to all reflector-anchors and multiple channels You can obtain information, Information about can be passed to the passive-tag. For example, Initiative-anchor about all reflector-anchors You can pass it to the passive-tag, or to some of the reflector-anchors You can also pass it to the passive-tag.
[0188] The initiative-anchor can transmit the PCT necessary for passive-tag positioning calculation via an advertisement (or extended advertisement). The PCT transmitted by the initiative-anchor to the passive-tag represents the LO local phase difference between the initiative-anchor and each reflect-anchor. It may apply to.
[0189] For example, BLE periodic advertising can be used when transmitting the above information.
[0190] FIG. 14 illustrates an example of transmitting PCT-related information using BLE periodic advertising according to one embodiment of the present disclosure.
[0191] Referring to Fig. 14, when using BLE periodic advertising, the periodic advertising period (T CSadv ) is the subevent interval (T of the 1:M CS procedure CSsub It can be set to an integer multiple of ). By setting it to an integer multiple, the processing complexity of the device can be improved.
[0192] The size of the above information being advertised is PCT size (L PCT ), number of reflect-anchors (M), periodic advertising period / subevent interval, and number of steps within the subevent (n step It can be determined based on ).
[0193] For example, the size of the above information It can be proportional to. For example, when advertising a 4-byte PCT with 3 reflect-anchors every two subevents in a subevent consisting of 5 steps (i.e., T CSadv = 2T CSsub It can be composed of 4×3×2×5 = 120 bytes of advertising data.
[0194] Depending on the size of the above information, primary advertising or extended advertising may be used. For example, if the size of the above information is 31 bytes or less depending on the original data and compression ratio, primary advertising supporting up to 31 bytes may be used. If the size of the above information exceeds 31 bytes depending on the original data and compression ratio, extended advertising may be used. Or, The above information may be compressed for large values or for efficient transmission.
[0195] Passive-tag T can calculate its position by utilizing the PCT between anchors received from the initiative-anchor. In this case, Passive-tag T is from Equation 8 More accurate positioning may be possible by applying it. In some cases, Passive-tag may report positioning results to a positioning system.
[0196] Although the embodiments of the present disclosure described above have focused on an example of exchanging CS tones between an Initiative-anchor and a reflector-anchor, they may also be applied to cases where CS SYNC packets are exchanged or where CS SYNC packets and CS tones are exchanged together, depending on the type of CS stage. Furthermore, although the embodiments of the present disclosure described above have focused on a method of performing positioning in a passive-tag based on BLE CS signal exchange (e.g., CS SYNC and / or CS tone) between one Initiative-anchor and M reflector-anchors, this can be extended to a method of performing positioning in a passive-tag based on BLE CS signal exchange (e.g., CS SYNC and / or CS tone) between multiple Initiative-anchors and M reflector-anchors. Additionally, positioning may be performed in each of multiple passive-tags based on BLE CS signal exchange between one or more Initiative-anchors and multiple reflector-anchors. Accordingly, the number of initiative-anchor, reflect-anchor, and passive-tag in a positioning system operating according to the method proposed in this disclosure can be configured in various ways.
[0197] Meanwhile, one initiative-anchor and two or more reflect-anchors can be organized into a cluster. A cluster can represent the minimum unit for a passive location as a set of multiple anchors and can be understood as a concept similar to a cell in mobile communication. A reflect-anchor in one cluster can function as an initiative-anchor in another cluster. A CS procedure can be performed on a cluster-by-cluster basis. The initiative-anchor of each cluster can perform a CS procedure with the reflective-anchors of the cluster to which it belongs. Reflector-anchors belonging to the same cluster can transmit a CS Tone (in a predetermined order) after receiving the CS Tone from the initiative-anchor of that cluster. Additionally, the initiative-anchor can advertise a PCT after performing the CS procedure, and the PCT can take various forms.
[0198] Although the embodiments of the present disclosure described above focused on the operation in a single cluster, it is obvious that multiple clusters may be configured.
[0199] Additionally, a frequency spatial group (FSG) can be defined among multiple clusters. An FSG refers to a set of clusters capable of performing a CS procedure within the same or overlapping time unit (e.g., CS subevent, event, procedure, etc.). A single FSG may contain one or more clusters. A single cluster may belong to two or more FSGs. Clusters belonging to the same FSG may have the same CS anchor point. Since clusters belonging to the same FSG are synchronized with the same channel sounding anchor point, they can perform channel sounding within the same or overlapping time unit (e.g., CS subevent, event, procedure, etc.). CS procedures do not overlap between clusters belonging to different FSGs. That is, clusters belonging to the first FSG can perform CS when they do not overlap with clusters belonging to the second FSG on the time axis.
[0200] FIG. 15 illustrates a plurality of cluster chains according to one embodiment of the present disclosure.
[0201] Figure 15 illustrates an example in which 16 anchors form 7 clusters. Referring to Figure 15, 0 through 15 represent the indices of each anchor, and I represents the initiative-anchor. Each cluster may contain one initiative-anchor and three reflect-anchors. A single anchor may be included in multiple clusters. Anchors corresponding to indices 3, 5, 7, 9, 11, and 13 may act as initiative-anchors for one cluster and reflect-anchors for another cluster. In the case of clusters 0, 2, 4, and 6, since the anchors do not overlap, CS procedures can be executed within the same or overlapping time units (e.g., CS subevent, event, procedure, etc.). Therefore, clusters 0, 2, 4, and 6 can form a single FSG (e.g., FSG0). Likewise, in the case of clusters 1, 3, and 5, since the anchors do not overlap, CS procedures can be performed within the same / overlapping time units (e.g., CS subevent, event, procedure, etc.), and thus clusters 1, 3, and 5 can form a single FSG (e.g., FSG1).
[0202] FIG. 16 illustrates an example in which a CS procedure is performed in a cluster chain according to one embodiment of the present disclosure.
[0203] The CS procedure of Fig. 16 is based on the cluster chain structure of Fig. 15.
[0204] Referring to FIG. 16, clusters 0, 2, 4, and 6 belonging to FSG 0 can perform actions corresponding to CS stage instances within the same CS subevent instance. Clusters 1, 3, and 5 belonging to FSG 1 can perform actions corresponding to CS stage instances within CS subevent instances that do not overlap with the CS subevent instance of FSG 0. A guard period (FSG guard period) between CS subevents can be inserted by considering the CS anchor point offset between clusters. The CS subevent of FSG 1 can start after the guard period from the time when advertising of FSG 1 is completed. The guard period may follow a predefined value or be determined based on the number of anchors within the cluster.
[0205] Through the aforementioned cluster chain and FSG settings, the location of passive tags can be continuously tracked in the positioning system. Additionally, through the aforementioned cluster chain and FSG settings, positioning for multiple passive tags can be performed simultaneously within the same or overlapping time unit.
[0206] FIG. 17 is a flowchart of the operation of a first device according to one embodiment of the present disclosure.
[0207] The first device performing the operations of FIG. 17 is assumed to perform the role of the passive-tag described above. The order of operations of FIG. 17 may be changed, some operations may be omitted, or two or more operations may be combined and executed as a single operation.
[0208] Referring to FIG. 17, in operation 1710, the first device can receive a first signal transmitted by the second device. The second device may be a device that performs the aforementioned initiative-anchor role.
[0209] In operation 1720, the first device may receive a second signal transmitted to the second device by a device having index m among M devices. The M devices may be devices performing the reflect-anchor role described above. The number of devices performing the reflect-anchor role M is a natural number greater than or equal to 2, m is an integer, and m ∈ {1, 2, 3, ..., M-1, M}. For example, the second signal may be received from each of the M devices.
[0210] The second device and the M devices may be included in the same cluster. The first signal and the second signal may be exchanged within a single stage instance associated with BLE channel sounding. The first signal and the second signal may be a CS Tone. Or, the first signal and the second signal may be a CS SYNC. Or, the first signal and the second signal may include a CS SYNC and a CS Tone.
[0211] In operation 1730, the first device can determine a first PCT (phase correction term) based on the first signal. The first PCT may represent the phase of the first signal measured by the first device with respect to the first signal. For example, the first PCT may be based on Equation 6.
[0212] In operation 1740, the first device can identify the second PCT based on the second signal. The second PCT may represent the phase of the second signal measured by the first device with respect to the second signal. For example, the second PCT may be based on Equation 7. For example, if the second signal is received from each of M devices, the second PCT for each device may be identified based on the second signal corresponding to each device.
[0213] In operation 1750, the first device can determine, based on the first PCT and the second PCT, the difference between (i) a first phase shift between the first device and the second device and (ii) a second phase shift between the first device and the device having index m. For example, the difference is of Equation 8 It may apply to.
[0214] In operation 1760, the first device can calculate the position of the first device based on the difference.
[0215] Although not illustrated in FIG. 17, the first device may receive information regarding a third PCT between the second device and the device having index m from the second device. The information regarding the third PCT is information indicating the difference between the local phase of the local oscillator of the second device and the local phase of the local oscillator of the device having index m. For example, the information regarding the third PCT is of Equation 11 It may correspond to. When information regarding the third PCT is received, the first device can calculate the location of the first device based on the information regarding the third PCT and the difference.
[0216] For example, information regarding the third PCT can be received based on a BLE periodic advertisement. In this case, the period of the periodic advertisement can be set as an integer multiple of the sub-event interval associated with the BLE channel sounding. The size of the data of the periodic advertisement can be determined based on the number of bits of information regarding the third PCT, M, the value obtained by dividing the period of the periodic advertisement by the sub-event interval, and the number of steps within a single sub-event.
[0217] In the above-described embodiment, BLE CS was described primarily using the frequency channels of Table 1, but channels in frequency bands other than the 2.4 GHz frequency band may also be used. Additionally, in the above-described embodiment, BLE CS was described primarily using channels separated by 1 MHz intervals, but other frequency intervals such as 2 MHz or 1 / 2 MHz may also be used.
[0218] The positioning method proposed in this disclosure can be applied to various fields such as indoor positioning systems (IPS), indoor navigation, automation, and security. For example, it can be used to determine whether a passenger or visitor has entered a transaction zone at a contactless gate, such as at an airport, bus, or building entrance. Alternatively, it can be used to smoothly provide door opening and closing operations by determining whether a user is approaching a vehicle in a digital car key.
[0219] Through the embodiments of the present disclosure, positioning using BLE CS may be possible, and positioning performance may be improved. Furthermore, the embodiments of the present disclosure can reduce system implementation costs compared to conventional positioning systems composed of UWB (ultra-wideband) anchor devices by implementing a positioning system using devices that support BLE CS. Additionally, the number of anchor devices required in the same area can be reduced due to the increased communication range of BLE compared to UWB.
[0220] Methods according to the claims or embodiments described in the specification of the present disclosure may be implemented in the form of hardware, software, or a combination of hardware and software.
[0221] When implemented in software, a computer-readable storage medium may be provided for storing one or more programs (software modules). One or more programs stored in the computer-readable storage medium are configured for execution by one or more processors within an electronic device. One or more programs include instructions that cause the electronic device to execute methods according to the claims or embodiments described in the specification of this disclosure.
[0222] Such programs (software modules, software) may be stored in random access memory, non-volatile memory including flash memory, ROM (Read Only Memory), Electrically Erasable Programmable Read Only Memory (EEPROM), magnetic disc storage devices, Compact Disc-ROM (CD-ROM), Digital Versatile Discs (DVDs), or other forms of optical storage devices, magnetic cassettes. Alternatively, they may be stored in memory composed of some or all of these. Additionally, each constituent memory may include multiple units.
[0223] Additionally, the program may be stored on an attachable storage device accessible via a communication network such as the Internet, Intranet, Local Area Network (LAN), Wide LAN (WLAN), or Storage Area Network (SAN), or a combination thereof. Such a storage device may be connected to a device performing an embodiment of the present disclosure through an external port. Additionally, a separate storage device on a communication network may be connected to a device performing an embodiment of the present disclosure.
[0224] In the specific embodiments of the present disclosure described above, the components included in one embodiment are expressed in a singular or plural form according to the specific embodiment presented. However, the singular or plural expression is selected to suit the situation presented for convenience of explanation, and the present disclosure is not limited to singular or plural components; even if a component is expressed in the plural form, it may be composed in the singular form, or even if a component is expressed in the singular form, it may be composed in the plural form.
[0225] The flowcharts described above illustrate exemplary methods that may be implemented in accordance with the principles of the present disclosure, and various modifications may be made to the methods illustrated in the flowcharts of this specification. For example, although they are illustrated as a series of steps, the various steps in each figure may overlap, occur in parallel, occur in a different order, or occur multiple times. In other examples, steps may be omitted or replaced with other steps. The values described above are merely examples, and it is fully possible to apply other values.
[0226] Meanwhile, the embodiments of the present disclosure disclosed in this specification and drawings are merely specific examples provided to facilitate the explanation of the technical content of the present disclosure and to aid in understanding the present disclosure, and are not intended to limit the scope of the present disclosure. That is, it is obvious to those skilled in the art that other variations based on the technical concept of the present disclosure are possible. Furthermore, each of the above embodiments may be combined and operated together as needed.
[0227] Furthermore, the order of description in the drawings illustrating the method of the present invention does not necessarily correspond to the order of execution, and the order of execution may be changed or executed in parallel. Alternatively, the drawings illustrating the method of the present invention may omit some components and include only some components to the extent that the essence of the present invention is not compromised.
Claims
1. A method performed by a first device having a first role in a communication system supporting Bluetooth or Bluetooth Low Energy (BLE), A step of receiving a first signal transmitted by a second device of the second role; A step of receiving a second signal transmitted to the second device by a device having index m among M devices of the third role, wherein M is a natural number greater than or equal to 2, m is an integer, and m ∈ {1, 2, 3,...,M-1, M}; A step of identifying a first PCT (phase correction term) based on the first signal above; A step of verifying the second PCT based on the second signal above; Based on the first PCT and the second PCT, a step of determining (i) a first phase shift between the first device and the second device and (ii) a second phase shift between the first device and the device having index m; and A method comprising the step of calculating the position of the first device based on the above difference.
2. In Paragraph 1, A method characterized by further including the step of receiving information about a third PCT between the second device and the device having index m from the second device.
3. In Paragraph 2, A method characterized in that the information regarding the third PCT above indicates the difference between the local phase of the local oscillator of the second device and the local phase of the local oscillator of the device having the index m.
4. In Paragraph 2, A method characterized by including a step of calculating the position of the first device based on information regarding the third PCT and the difference.
5. In Paragraph 2, Information regarding the above-mentioned third PCT is received based on BLE periodic advertising, and A method characterized in that the period of the above periodic advertisement is an integer multiple of the sub-event interval associated with BLE channel sounding.
6. In Paragraph 5, A method characterized in that the size of the data of the periodic advertisement is determined based on the number of bits of information for the third PCT, the value obtained by dividing the period of the periodic advertisement by the sub-event interval, and the number of steps within one sub-event.
7. In Paragraph 1, The second device and the M devices are included in the same cluster, and A method characterized by receiving the second signal sequentially in a predetermined order from the M devices within the cluster.
8. In Paragraph 1, A method characterized in that the first signal and the second signal are exchanged within a single step instance associated with BLE channel sounding.
9. In Paragraph 1, A method characterized in that the first role is a passive tag, the second role is an initiative-anchor, and the third role is a reflect-anchor.
10. In a first device having a first role in a communication system supporting Bluetooth or Bluetooth Low Energy (BLE), Transmitter / receiver; and It includes a control unit functionally connected to the above-mentioned transmitting and receiving unit, and the control unit: Receives a first signal transmitted by a second device of the second role, and Among the M devices of the third role, the device having index m receives a second signal transmitted to the second device, wherein M is a natural number greater than or equal to 2, m is an integer, and m ∈ {1, 2, 3,...,M-1, M}, Based on the first signal above, identify the first PCT (phase correction term), and Based on the above second signal, the second PCT is verified, and Based on the first PCT and the second PCT, (i) the difference between the first phase shift between the first device and the second device and (ii) the second phase shift between the first device and the device having index m is identified, and A first device configured to calculate the position of the first device based on the above difference.
11. In Clause 10, the above control unit is: A first device characterized by being further configured to receive information about a third PCT between the second device and the device having index m from the second device.
12. In Paragraph 10, The information regarding the third PCT above indicates the difference between the local phase of the local oscillator of the second device and the local phase of the local oscillator of the device having the index m, and A first device characterized in that the position of the first device is calculated based on information regarding the third PCT and the difference.
13. In Paragraph 10, Information regarding the above-mentioned third PCT is received based on BLE periodic advertising, and A first device characterized in that the period of the above periodic advertisement is an integer multiple of the sub-event interval associated with BLE channel sounding.
14. In Paragraph 13, A first device characterized in that the size of the data of the periodic advertisement is determined based on the number of bits of information for the third PCT, the value obtained by dividing the period of the periodic advertisement by the sub-event interval, and the number of steps within one sub-event.
15. In Paragraph 10, The second device and the M devices are included in the same cluster, and The second signal is received sequentially from the M devices within the cluster in a predetermined order, and A first device characterized in that the first signal and the second signal are exchanged within a single stage instance associated with BLE channel sounding.