Location-based prediction of user intention for user intent assisted communication and network system performance in retail environment
Patent Information
- Application Number
- PCT/US2026/013115
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2025-03-26
- Filing Date
- 2026-01-29
- Publication Date
- 2026-10-01
Smart Images

Figure US2026013115_01102026_PF_FP_ABST
Abstract
Description
Qualcomm Ref. No. 2503639WO1 / 49LOCATION-BASED PREDICTION OF USER INTENTION FOR USER INTENT ASSISTED COMMUNICATION AND NETWORK SYSTEM PERFORMANCE IN RETAIL ENVIRONMENTCROSS-REFERENCE TO RELATED APPLICATIONS
[0001] The present Application for Patent claims priority to Greek Patent Application No.20250100223, entitled “LOCATION-BASED PREDICTION OF USER INTENTION FOR USER INTENT ASSISTED COMMUNICATION AND NETWORK SYSTEM PERFORMANCE IN RETAIL ENVIRONMENT,” filed March 26, 2025, which is assigned to the assignee hereof and expressly incorporated herein by reference in its entirety.BACKGROUND OF THE DISCLOSURE1. Field of the Disclosure
[0002] Aspects of the disclosure relate generally to wireless technologies.2. Description of the Related Art
[0003] Electronic shelf labels (ESLs) are an example of electronic label devices used by retailers for displaying product pricing or other product information to consumers. ESLs typically use electronic paper (e-paper) or liquid crystal display (LCD) to display the current information. E-paper (also referred to as e-ink) is widely used for ESLs, as it provides a sharp display and supports full graphic imaging while only needing power during updates and no power to retain an image.
[0004] ESLs are increasingly being integrated with existing retail technologies, such as electronic article surveillance, digital signage, and people counters. For example, retailers can upload a floor plan of the sales area into the ESL management software. Consumers can then be tracked (in real time) through a network of people-counting devices, or via their personal BLUETOOTH® devices, in order to determine their position within the store at all times. This allows an individual customer to receive targeted, customized marketing initiatives, such as discounts, individual pricing, etc.SUMMARYQC2503639WOQualcomm Ref. No. 2503639WO2 / 49
[0005] The following presents a simplified summary relating to one or more aspects disclosed herein. Thus, the following summary should not be considered an extensive overview relating to all contemplated aspects, nor should the following summary be considered to identify key or critical elements relating to all contemplated aspects or to delineate the scope associated with any particular aspect. Accordingly, the following summary has the sole purpose to present certain concepts relating to one or more aspects relating to the mechanisms disclosed herein in a simplified form to precede the detailed description presented below.
[0006] In some aspects, a method of positioning performed by a server includes obtaining location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; and transmitting a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.
[0007] In some aspects, a server includes one or more memories; one or more transceivers; and one or more processors communicatively coupled to the one or more memories and the one or more transceivers, the one or more processors, either alone or in combination, configured to: obtain location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; and transmit, via the one or more transceivers, a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.
[0008] In some aspects, a server includes means for obtaining location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; and means for transmitting a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.
[0009] In some aspects, a non-transitory computer-readable medium stores computer-executable instructions that, when executed by a server, cause the server to: obtain location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; and transmit a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.QC2503639WOQualcomm Ref. No. 2503639WO3 / 49
[0010] Other obj ects and advantages associated with the aspects disclosed herein will be apparent to those skilled in the art based on the accompanying drawings and detailed description.BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The accompanying drawings are presented to aid in the description of various aspects of the disclosure and are provided solely for illustration of the aspects and not limitation thereof.
[0012] FIG. 1 illustrates an example electronic shelf label (ESL) system, according to aspects of the disclosure.
[0013] FIG. 2 illustrates example components of an example ESL, according to aspects of the disclosure.
[0014] FIGS. 3A, 3B, and 3C are simplified block diagrams of several sample aspects of components that may be employed in a user equipment (UE), a base station, and a network entity, respectively, and configured to support communications as taught herein.
[0015] FIG. 4 is a diagram illustrating an example electronic shelf label (ESL) deployment scenario, according to aspects of the disclosure.
[0016] FIG. 5 illustrates an example neural network, according to aspects of the disclosure.
[0017] FIG. 6 is a diagram illustrating example interaction between an application, an application service, an operating system (OS), and hardware using various application programming interfaces (APIs), according to aspects of the disclosure.
[0018] FIG. 7 illustrates an example method of positioning, according to aspects of the disclosure.DETAILED DESCRIPTION
[0019] Aspects of the disclosure are provided in the following description and related drawings directed to various examples provided for illustration purposes. Alternate aspects may be devised without departing from the scope of the disclosure. Additionally, well-known elements of the disclosure will not be described in detail or will be omitted so as not to obscure the relevant details of the disclosure.
[0020] Various aspects relate generally to user location-based prediction for user intention.Some aspects more specifically relate to using location-based technologies to infer user intentions or preferences and provide recommendations based on inferred intentions orQC2503639WOQualcomm Ref. No. 2503639WO4 / 49preferences. In some aspects, a server may obtain location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior, and transmit a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.
[0021] Particular aspects of the subject matter described in this disclosure can be implemented to realize one or more of the following potential advantages. In some examples, by using location-based technologies to infer user intentions or preferences, the described techniques may be used to provide personalized and useful product recommendations to users.
[0022] The words “exemplary” and / or “example” are used herein to mean “serving as an example, instance, or illustration.” Any aspect described herein as “exemplary” and / or “example” is not necessarily to be construed as preferred or advantageous over other aspects. Likewise, the term “aspects of the disclosure” does not require that all aspects of the disclosure include the discussed feature, advantage or mode of operation.
[0023] Those of skill in the art will appreciate that the information and signals described below may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the description below may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof, depending in part on the particular application, in part on the desired design, in part on the corresponding technology, etc.
[0024] Further, many aspects are described in terms of sequences of actions to be performed by, for example, elements of a computing device. It will be recognized that various actions described herein can be performed by specific circuits (e.g., application specific integrated circuits (ASICs)), by program instructions being executed by one or more processors, or by a combination of both. Additionally, the sequence(s) of actions described herein can be considered to be embodied entirely within any form of non- transitory computer-readable storage medium having stored therein a corresponding set of computer instructions that, upon execution, would cause or instruct an associated processor of a device to perform the functionality described herein. Thus, the various aspects of the disclosure may be embodied in a number of different forms, all of whichQC2503639WOQualcomm Ref. No. 2503639WO5 / 49have been contemplated to be within the scope of the claimed subject matter. In addition, for each of the aspects described herein, the corresponding form of any such aspects may be described herein as, for example, “logic configured to” perform the described action.
[0025] As used herein, the terms “user equipment” (UE) and “base station” are not intended to be specific or otherwise limited to any particular radio access technology (RAT), unless otherwise noted. In general, a UE may be any wireless communication device (e.g., a mobile phone, router, tablet computer, laptop computer, consumer asset locating device, wearable (e.g., smartwatch, glasses, augmented reality (AR) / virtual reality (VR) headset, etc.), vehicle (e.g., automobile, motorcycle, bicycle, etc.), Internet of Things (loT) device, etc.) used by a user to communicate over a wireless communications network. A UE may be mobile or may (e.g., at certain times) be stationary, and may communicate with a radio access network (RAN). As used herein, the term “UE” may be referred to interchangeably as an “access terminal” or “AT,” a “client device,” a “wireless device,” a “subscriber device,” a “subscriber terminal,” a “subscriber station,” a “user terminal” or “UT,” a “mobile device,” a “mobile terminal,” a “mobile station,” or variations thereof. Generally, UEs can communicate with a core network via a RAN, and through the core network the UEs can be connected with external networks such as the Internet and with other UEs. Of course, other mechanisms of connecting to the core network and / or the Internet are also possible for the UEs, such as over wired access networks, wireless local area network (WLAN) networks (e.g., based on the Institute of Electrical and Electronics Engineers (IEEE) 802.11 specification, etc.) and so on.
[0026] Electronic shelf labels (ESLs) are an example of electronic label devices used by retailers for displaying product pricing or other product information to consumers. ESLs typically use electronic paper (e-paper) or liquid crystal display (LCD) to display the current information. E-paper (also referred to as e-ink) is widely used for ESLs, as it provides a sharp display and supports full graphic imaging while only needing power during updates and no power to retain an image.
[0027] ESLs are increasingly being integrated with existing retail technologies, such as electronic article surveillance, digital signage, and people counters. For example, retailers can upload a floor plan of the sales area into the ESL management software. Consumers can then be tracked (in real time) through a network of people-counting devices, or via their personal BLUETOOTH® devices, in order to determine their position within theQC2503639WOQualcomm Ref. No. 2503639WO6 / 49store at all times. This allows an individual customer to receive targeted, customized marketing initiatives, such as discounts, individual pricing, etc.
[0028] FIG. 1 illustrates an example ESL system 100, according to aspects of the disclosure. An ESL system generally includes three components: label management software (e.g., running on a central management entity 110, such as a local server at the retail location or a cloud-based server), one or more wireless communication access points 120 (e.g., Wi-Fi access points), one or more rail controllers 130, and one or more (usually many) ESLs 140. The label management software is responsible for the configuration of the system, configuration of the properties of the ESLs 140 themselves, and storing the database of information to be displayed by the ESLs 140. The software mainly covers the network management, file systems, and transmission of data. It also processes and packs the data to be displayed into packets of information. The data packets are then sent to one or more wireless communication access points 120 via a wireless network (e.g., Wi-Fi) for distribution to the ESLs 140 via the one or more rail controllers 130.
[0029] A wireless communication access point 120 is responsible for the stability and reliability of transmissions from the label management software (on the central management entity 110) to the ESLs 140. There may be multiple wireless communication access points 120 deployed in a single retail location based on the size of the space and / or the number of ESLs 140 deployed.
[0030] A wireless communication access point 120 communicates with one or more rail controllers 130 via a short-range wireless communications protocol, such as BLUETOOTH® Low Energy (BLE). A rail controller 130 may therefore include a BLE radio (or other short-range wireless communications protocol radio). A rail controller 130 may be powered by a battery (e.g., a lithium-ion battery) or a wired connection. A rail controller 130 is coupled to, or integrated into, a rail to which multiple ESLs 140 can be “clipped” or otherwise attached. Once clipped to the rail, each ESL 140 has a wired connection to the rail controller 130 (e.g., via a three-wire bus for power, ground, and data).
[0031] An ESL 140 functions as a receiver from the wireless communication access point 120 (via the rail controller 130) to display the information configured from the label management software. The ESL 140 then acts based on the instructions that were provided in the data packets from the label management software. An ESL 140 includesQC2503639WOQualcomm Ref. No. 2503639WO7 / 49a display and optionally a camera. ESLs 140 generally do not include batteries, as they are typically powered by the rail to which they are attached. In some cases, an ESL 140 may not have a short-range wireless communications radio (e.g., a BLE radio), as it receives data from the wireless communication access point 120 via the wired rail connection to the rail controller 130.
[0032] An ESL application programming interface (API) is included in the current BLUETOOTH® specification and permits a 7-bit group identifier of 8-bit unique ESL identifiers, allowing for a total of 32,640 ESLs 140 to be allocated for one wireless communication access point 120. With those constraints, multiple wireless communication access points 120 may be needed to cover a typical grocery store ESL application.
[0033] FIG. 2 illustrates example components of an example ESL 140, according to aspects of the disclosure. Note that in some cases, rather than an ESL 140 having its own wireless radio (e.g., a BLE radio) as shown in FIG. 2, multiple ESLs 140 may be attached (e.g., clipped) to a rail attached to a retail shelf. In this case, the rail (specifically a rail controller 130) contains the short-range wireless communications radio and the ESLs 140 have just the display. The radio controller 130 in the rail communicates locally to the clipped-on ESLs 140 over a wired protocol (the act of clipping on connects the ESLs 140 to the wires of the rail controller 130). As such, an ESL 140 itself may not have a radio but may connect locally to one (i.e., the rail controller 130).
[0034] FIGS. 3A, 3B, and 3C illustrate several example components (represented by corresponding blocks) that may be incorporated into a UE 302 (which may correspond to any of the UEs described herein), a base station 304 (which may correspond to any of the base stations or access points described herein), and a network entity 306 to support the operations described herein. It will be appreciated that these components may be implemented in different types of apparatuses in different implementations (e.g., in an ASIC, in a system-on-chip (SoC), etc.). The illustrated components may also be incorporated into other apparatuses in a communication system. For example, other apparatuses in a system may include components similar to those described to provide similar functionality. Also, a given apparatus may contain one or more of the components. For example, an apparatus may include multiple transceiver components that enable the apparatus to operate on multiple carriers and / or communicate via different technologies.QC2503639WOQualcomm Ref. No. 2503639WO8 / 49
[0035] The UE 302 and the base station 304 each include one or more wireless wide area network (WWAN) transceivers 310 and 350, respectively, providing means for communicating (e.g., means for transmitting, means for receiving, means for measuring, means fortuning, means for refraining from transmitting, etc.) via one or more wireless communication networks (not shown), such as an NR network, an LTE network, a GSM network, and / or the like. The WWAN transceivers 310 and 350 may each be connected to one or more antennas 316 and 356, respectively, for communicating with other network nodes, such as other UEs, access points, base stations (e.g., eNBs, gNBs), etc., via at least one designated RAT (e.g., NR, LTE, GSM, etc.) over a wireless communication medium of interest (e.g., some set of time / frequency resources in a particular frequency spectrum). The WWAN transceivers 310 and 350 may be variously configured for transmitting and encoding signals 318 and 358 (e.g., messages, indications, information, and so on), respectively, and, conversely, for receiving and decoding signals 318 and 358 (e.g., messages, indications, information, pilots, and so on), respectively, in accordance with the designated RAT. Specifically, the WWAN transceivers 310 and 350 include one or more transmitters 314 and 354, respectively, for transmitting and encoding signals 318 and 358, respectively, and one or more receivers 312 and 352, respectively, for receiving and decoding signals 318 and 358, respectively.
[0036] The LE 302 and the base station 304 each also include, at least in some cases, one or more short-range wireless transceivers 320 and 360, respectively. The short-range wireless transceivers 320 and 360 may be connected to one or more antennas 326 and 366, respectively, and provide means for communicating (e.g., means for transmitting, means for receiving, means for measuring, means for tuning, means for refraining from transmitting, etc.) with other network nodes, such as other LEs, access points, base stations, etc., via at least one designated RAT (e.g., Wi-Fi, LTE Direct, BLLETOOTH®, ZIGBEE®, Z-WAVE®, PC5, dedicated short-range communications (DSRC), wireless access for vehicular environments (WAVE), near-field communication (NFC), ultra- wideband (UWB), etc.) over a wireless communication medium of interest. The short- range wireless transceivers 320 and 360 may be variously configured for transmitting and encoding signals 328 and 368 (e.g., messages, indications, information, and so on), respectively, and, conversely, for receiving and decoding signals 328 and 368 (e.g., messages, indications, information, pilots, and so on), respectively, in accordance withQC2503639WOQualcomm Ref. No. 2503639WO9 / 49the designated RAT. Specifically, the short-range wireless transceivers 320 and 360 include one or more transmitters 324 and 364, respectively, for transmitting and encoding signals 328 and 368, respectively, and one or more receivers 322 and 362, respectively, for receiving and decoding signals 328 and 368, respectively. As specific examples, the short-range wireless transceivers 320 and 360 may be Wi-Fi transceivers, BLUETOOTH® transceivers, ZIGBEE® and / or Z-WAVE® transceivers, NFC transceivers, UWB transceivers, or vehi cl e-to- vehicle (V2V) and / or vehicle-to- everything (V2X) transceivers.
[0037] The UE 302 and the base station 304 also include, at least in some cases, satellite signal receivers 330 and 370. The satellite signal receivers 330 and 370 may be connected to one or more antennas 336 and 376, respectively, and may provide means for receiving and / or measuring satellite positioning / communication signals 338 and 378, respectively. Where the satellite signal receivers 330 and 370 are satellite positioning system receivers, the satellite positioning / communication signals 338 and 378 may be global positioning system (GPS) signals, global navigation satellite system (GLONASS®) signals, Galileo signals, Beidou signals, Indian Regional Navigation Satellite System (NAVIC), QuasiZenith Satellite System (QZSS), etc. Where the satellite signal receivers 330 and 370 are non-terrestrial network (NTN) receivers, the satellite positioning / communication signals 338 and 378 may be communication signals (e.g., carrying control and / or user data) originating from a 5G network. The satellite signal receivers 330 and 370 may comprise any suitable hardware and / or software for receiving and processing satellite positioning / communication signals 338 and 378, respectively. The satellite signal receivers 330 and 370 may request information and operations as appropriate from the other systems, and, at least in some cases, perform calculations to determine locations of the UE 302 and the base station 304, respectively, using measurements obtained by any suitable satellite positioning system algorithm.
[0038] The base station 304 and the network entity 306 each include one or more network transceivers 380 and 390, respectively, providing means for communicating (e.g., means for transmitting, means for receiving, etc.) with other network entities (e.g., other base stations 304, other network entities 306). For example, the base station 304 may employ the one or more network transceivers 380 to communicate with other base stations 304 or network entities 306 over one or more wired or wireless backhaul links. As anotherQC2503639WOQualcomm Ref. No. 2503639WO10 / 49example, the network entity 306 may employ the one or more network transceivers 390 to communicate with one or more base station 304 over one or more wired or wireless backhaul links, or with other network entities 306 over one or more wired or wireless core network interfaces.
[0039] A transceiver may be configured to communicate over a wired or wireless link. A transceiver (whether a wired transceiver or a wireless transceiver) includes transmitter circuitry (e.g., transmitters 314, 324, 354, 364) and receiver circuitry (e.g., receivers 312, 322, 352, 362). A transceiver may be an integrated device (e.g., embodying transmitter circuitry and receiver circuitry in a single device) in some implementations, may comprise separate transmitter circuitry and separate receiver circuitry in some implementations, or may be embodied in other ways in other implementations. The transmitter circuitry and receiver circuitry of a wired transceiver (e.g., network transceivers 380 and 390 in some implementations) may be coupled to one or more wired network interface ports. Wireless transmitter circuitry (e.g., transmitters 314, 324, 354, 364) may include or be coupled to a plurality of antennas (e.g., antennas 316, 326, 356, 366), such as an antenna array, that permits the respective apparatus (e.g., UE 302, base station 304) to perform transmit “beamforming,” as described herein. Similarly, wireless receiver circuitry (e.g., receivers 312, 322, 352, 362) may include or be coupled to a plurality of antennas (e.g., antennas 316, 326, 356, 366), such as an antenna array, that permits the respective apparatus (e.g., UE 302, base station 304) to perform receive beamforming, as described herein. In some aspects, the transmitter circuitry and receiver circuitry may share the same plurality of antennas (e.g., antennas 316, 326, 356, 366), such that the respective apparatus can only receive or transmit at a given time, not both at the same time. A wireless transceiver (e.g., WWAN transceivers 310 and 350, short-range wireless transceivers 320 and 360) may also include a network listen module (NUM) or the like for performing various measurements.
[0040] As used herein, the various wireless transceivers (e.g., transceivers 310, 320, 350, and 360, and network transceivers 380 and 390 in some implementations) and wired transceivers (e.g., network transceivers 380 and 390 in some implementations) may generally be characterized as “a transceiver,” “at least one transceiver,” or “one or more transceivers.” As such, whether a particular transceiver is a wired or wireless transceiver may be inferred from the type of communication performed. For example, backhaulQC2503639WOQualcomm Ref. No. 2503639WO11 / 49communication between network devices or servers will generally relate to signaling via a wired transceiver, whereas wireless communication between a UE (e.g., UE 302) and a base station (e.g., base station 304) will generally relate to signaling via a wireless transceiver.
[0041] The UE 302, the base station 304, and the network entity 306 also include other components that may be used in conjunction with the operations as disclosed herein. The UE 302, the base station 304, and the network entity 306 include one or more processors 332, 384, and 394, respectively, for providing functionality relating to, for example, wireless communication, and for providing other processing functionality. The processors 332, 384, and 394 may therefore provide means for processing, such as means for determining, means for calculating, means for receiving, means for transmitting, means for indicating, etc. In some aspects, the processors 332, 384, and 394 may include, for example, one or more general purpose processors, multi-core processors, central processing units (CPUs), ASICs, digital signal processors (DSPs), field programmable gate arrays (FPGAs), other programmable logic devices or processing circuitry, or various combinations thereof.
[0042] The UE 302, the base station 304, and the network entity 306 include memory circuitry implementing memories 340, 386, and 396 (e.g., each including a memory device), respectively, for maintaining information (e.g., information indicative of reserved resources, thresholds, parameters, and so on). The memories 340, 386, and 396 may therefore provide means for storing, means for retrieving, means for maintaining, etc. In some cases, the UE 302, the base station 304, and the network entity 306 may include positioning component 342, 388, and 398, respectively. The positioning component 342, 388, and 398 may be hardware circuits that are part of or coupled to the processors 332, 384, and 394, respectively, that, when executed, cause the UE 302, the base station 304, and the network entity 306 to perform the functionality described herein. In other aspects, the positioning component 342, 388, and 398 may be external to the processors 332, 384, and 394 (e.g., part of a modem processing system, integrated with another processing system, etc.). Alternatively, the positioning component 342, 388, and 398 may be memory modules stored in the memories 340, 386, and 396, respectively, that, when executed by the processors 332, 384, and 394 (or a modem processing system, another processing system, etc.), cause the UE 302, the base station 304, and the network entity 306 toQC2503639WOQualcomm Ref. No. 2503639WO12 / 49perform the functionality described herein. FIG. 3A illustrates possible locations of the positioning component 342, which may be, for example, part of the one or more WWAN transceivers 310, the memory 340, the one or more processors 332, or any combination thereof, or may be a standalone component. FIG. 3B illustrates possible locations of the positioning component 388, which may be, for example, part of the one or more WWAN transceivers 350, the memory 386, the one or more processors 384, or any combination thereof, or may be a standalone component. FIG. 3C illustrates possible locations of the positioning component 398, which may be, for example, part of the one or more network transceivers 390, the memory 396, the one or more processors 394, or any combination thereof, or may be a standalone component.
[0043] The UE 302 may include one or more sensors 344 coupled to the one or more processors 332 to provide means for sensing or detecting movement and / or orientation information that is independent of motion data derived from signals received by the one or more WWAN transceivers 310, the one or more short-range wireless transceivers 320, and / or the satellite signal receiver 330. By way of example, the sensor(s) 344 may include an accelerometer (e.g., a micro-electrical mechanical systems (MEMS) device), a gyroscope, a geomagnetic sensor (e.g., a compass), an altimeter (e.g., a barometric pressure altimeter), and / or any other type of movement detection sensor. Moreover, the sensor(s) 344 may include a plurality of different types of devices and combine their outputs in order to provide motion information. For example, the sensor(s) 344 may use a combination of a multi-axis accelerometer and orientation sensors to assist in the computation of positions in two-dimensional (2D) and / or three-dimensional (3D) coordinate systems.
[0044] In addition, the UE 302 includes a user interface 346 providing means for providing indications (e.g., audible and / or visual indications) to a user and / or for receiving user input (e.g., upon user actuation of a sensing device such a keypad, a touch screen, a microphone, and so on). Although not shown, the base station 304 and the network entity 306 may also include user interfaces.
[0045] Referring to the one or more processors 384 in more detail, in the downlink, IP packets from the network entity 306 may be provided to the processor 384. The one or more processors 384 may implement functionality for an RRC layer, a packet data convergence protocol (PDCP) layer, a radio link control (RLC) layer, and a medium access controlQC2503639WOQualcomm Ref. No. 2503639WO13 / 49(MAC) layer. The one or more processors 384 may provide RRC layer functionality associated with broadcasting of system information (e.g., master information block (MIB), system information blocks (SIBs)), RRC connection control (e.g., RRC connection paging, RRC connection establishment, RRC connection modification, and RRC connection release), inter-RAT mobility, and measurement configuration for UE measurement reporting; PDCP layer functionality associated with header compression / decompression, security (ciphering, deciphering, integrity protection, integrity verification), and handover support functions; RLC layer functionality associated with the transfer of upper layer PDUs, error correction through automatic repeat request (ARQ), concatenation, segmentation, and reassembly of RLC service data units (SDUs), re-segmentation of RLC data PDUs, and reordering of RLC data PDUs; and MAC layer functionality associated with mapping between logical channels and transport channels, scheduling information reporting, error correction, priority handling, and logical channel prioritization.
[0046] The transmitter 354 and the receiver 352 may implement Layer- 1 (LI) functionality associated with various signal processing functions. Layer- 1, which includes a physical (PHY) layer, may include error detection on the transport channels, forward error correction (FEC) coding / decoding of the transport channels, interleaving, rate matching, mapping onto physical channels, modulation / demodulation of physical channels, and MIMO antenna processing. The transmitter 354 handles mapping to signal constellations based on various modulation schemes (e.g., binary phase-shift keying (BPSK), quadrature phase-shift keying (QPSK), M-phase-shift keying (M-PSK), M-quadrature amplitude modulation (M-QAM)). The coded and modulated symbols may then be split into parallel streams. Each stream may then be mapped to an orthogonal frequency division multiplexing (OFDM) subcarrier, multiplexed with a reference signal (e.g., pilot) in the time and / or frequency domain, and then combined together using an inverse fast Fourier transform (IFFT) to produce a physical channel carrying a time domain OFDM symbol stream. The OFDM symbol stream is spatially precoded to produce multiple spatial streams. Channel estimates from a channel estimator may be used to determine the coding and modulation scheme, as well as for spatial processing. The channel estimate may be derived from a reference signal and / or channel condition feedback transmitted by the UE 302. Each spatial stream may then be provided to one or more different antennas 356. TheQC2503639WOQualcomm Ref. No. 2503639WO14 / 49transmitter 354 may modulate an RF carrier with a respective spatial stream for transmission.
[0047] At the UE 302, the receiver 312 receives a signal through its respective antenna(s) 316.The receiver 312 recovers information modulated onto an RF carrier and provides the information to the one or more processors 332. The transmitter 314 and the receiver 312 implement Layer-1 functionality associated with various signal processing functions. The receiver 312 may perform spatial processing on the information to recover any spatial streams destined for the UE 302. If multiple spatial streams are destined for the UE 302, they may be combined by the receiver 312 into a single OFDM symbol stream. The receiver 312 then converts the OFDM symbol stream from the time-domain to the frequency domain using a fast Fourier transform (FFT). The frequency domain signal comprises a separate OFDM symbol stream for each subcarrier of the OFDM signal. The symbols on each subcarrier, and the reference signal, are recovered and demodulated by determining the most likely signal constellation points transmitted by the base station 304. These soft decisions may be based on channel estimates computed by a channel estimator. The soft decisions are then decoded and de-interleaved to recover the data and control signals that were originally transmitted by the base station 304 on the physical channel. The data and control signals are then provided to the one or more processors 332, which implements Layer-3 (L3) and Layer-2 (L2) functionality.
[0048] In the downlink, the one or more processors 332 provides demultiplexing between transport and logical channels, packet reassembly, deciphering, header decompression, and control signal processing to recover IP packets from the core network. The one or more processors 332 are also responsible for error detection.
[0049] Similar to the functionality described in connection with the downlink transmission by the base station 304, the one or more processors 332 provides RRC layer functionality associated with system information (e.g., MIB, SIBs) acquisition, RRC connections, and measurement reporting; PDCP layer functionality associated with header compression / decompression, and security (ciphering, deciphering, integrity protection, integrity verification); REC layer functionality associated with the transfer of upper layer PDUs, error correction through ARQ, concatenation, segmentation, and reassembly of RLC SDUs, re-segmentation of RLC data PDUs, and reordering of RLC data PDUs; and MAC layer functionality associated with mapping between logical channels and transportQC2503639WOQualcomm Ref. No. 2503639WO15 / 49channels, multiplexing of MAC SDUs onto transport blocks (TBs), demultiplexing of MAC SDUs from TBs, scheduling information reporting, error correction through hybrid automatic repeat request (HARQ), priority handling, and logical channel prioritization.
[0050] Channel estimates derived by the channel estimator from a reference signal or feedback transmitted by the base station 304 may be used by the transmitter 314 to select the appropriate coding and modulation schemes, and to facilitate spatial processing. The spatial streams generated by the transmitter 314 may be provided to different antenna(s) 316. The transmitter 314 may modulate an RF carrier with a respective spatial stream for transmission.
[0051] The uplink transmission is processed at the base station 304 in a manner similar to that described in connection with the receiver function at the UE 302. The receiver 352 receives a signal through its respective antenna(s) 356. The receiver 352 recovers information modulated onto an RF carrier and provides the information to the one or more processors 384.
[0052] In the uplink, the one or more processors 384 provides demultiplexing between transport and logical channels, packet reassembly, deciphering, header decompression, control signal processing to recover IP packets from the UE 302. IP packets from the one or more processors 384 may be provided to the core network. The one or more processors 384 are also responsible for error detection.
[0053] For convenience, the UE 302, the base station 304, and / or the network entity 306 are shown in FIGS. 3 A, 3B, and 3C as including various components that may be configured according to the various examples described herein. It will be appreciated, however, that the illustrated components may have different functionality in different designs. In particular, various components in FIGS. 3A to 3C are optional in alternative configurations and the various aspects include configurations that may vary due to design choice, costs, use of the device, or other considerations. For example, in case of FIG. 3 A, a particular implementation of UE 302 may omit the WWAN transceiver(s) 310 (e.g., a wearable device or tablet computer or personal computer (PC) or laptop may have Wi-Fi and / or BLUETOOTH® capability without cellular capability), or may omit the short- range wireless transceiver(s) 320 (e.g., cellular-only, etc.), or may omit the satellite signal receiver 330, or may omit the sensor(s) 344, and so on. In another example, in case of FIG. 3B, a particular implementation of the base station 304 may omit the WWANQC2503639WOQualcomm Ref. No. 2503639WO16 / 49transceiver(s) 350 (e.g., a Wi-Fi “hotspot” access point without cellular capability), or may omit the short-range wireless transceiver s) 360 (e.g., cellular-only, etc.), or may omit the satellite signal receiver 370, and so on. For brevity, illustration of the various alternative configurations is not provided herein, but would be readily understandable to one skilled in the art.
[0054] The various components of the UE 302, the base station 304, and the network entity 306 may be communicatively coupled to each other over data buses 334, 382, and 392, respectively. In some aspects, the data buses 334, 382, and 392 may form, or be part of, a communication interface of the UE 302, the base station 304, and the network entity 306, respectively. For example, where different logical entities are embodied in the same device (e.g., gNB and location server functionality incorporated into the same base station 304), the data buses 334, 382, and 392 may provide communication between them.
[0055] The components of FIGS. 3A, 3B, and 3C may be implemented in various ways. In some implementations, the components of FIGS. 3 A, 3B, and 3C may be implemented in one or more circuits such as, for example, one or more processors and / or one or more ASICs (which may include one or more processors). Here, each circuit may use and / or incorporate at least one memory component for storing information or executable code used by the circuit to provide this functionality. For example, some or all of the functionality represented by blocks 310 to 346 may be implemented by processor and memory component(s) of the UE 302 (e.g., by execution of appropriate code and / or by appropriate configuration of processor components). Similarly, some or all of the functionality represented by blocks 350 to 388 may be implemented by processor and memory component(s) of the base station 304 (e.g., by execution of appropriate code and / or by appropriate configuration of processor components). Also, some or all of the functionality represented by blocks 390 to 398 may be implemented by processor and memory component(s) of the network entity 306 (e.g., by execution of appropriate code and / or by appropriate configuration of processor components). For simplicity, various operations, acts, and / or functions are described herein as being performed “by a UE,” “by a base station,” “by a network entity,” etc. However, as will be appreciated, such operations, acts, and / or functions may actually be performed by specific components or combinations of components of the UE 302, base station 304, network entity 306, etc.,QC2503639WOQualcomm Ref. No. 2503639WO17 / 49such as the processors 332, 384, 394, the transceivers 310, 320, 350, and 360, the memories 340, 386, and 396, the positioning component 342, 388, and 398, etc.
[0056] In some designs, the network entity 306 may be implemented as a core network component. In other designs, the network entity 306 may be distinct from a network operator or operation of the cellular network infrastructure. For example, the network entity 306 may be a component of a private network that may be configured to communicate with the UE 302 via the base station 304 or independently from the base station 304 (e.g., over a non-cellular communication link, such as Wi-Fi).
[0057] FIG. 4 is a diagram 400 illustrating an example ESL deployment scenario, according to aspects of the disclosure. Specifically, FIG. 4 illustrates a top view of a scenario where ESLs (e.g., ESLs 140) are deployed on both sides of two aisles of shelves in a retail establishment, warehouse, or the like. In the example of FIG. 4, groups of three ESLs are connected to a rail controller (e.g., a radio controller 130) and the rail controllers are spaced Im to 1.5m apart. However, as will be appreciated, this is merely an example configuration and there may be more or fewer ESLs per rail controller spaced closer or further apart.
[0058] In some cases, the ESLs may not be equipped with short-range wireless communications radios (e.g., BLE radios), and instead, the rail controller may include the short-range wireless communications radio for the three ESLs connected to it. In either case, the radio associated with an ESL (whether a component of the ESL of the rail controller to which the ESL is connected) may be referred to as an “ESL radio.”
[0059] Indoor positioning based on BLE beaconing from ESLs is being developed for retail and warehouse applications. In general, the location of a target device is determined based on signal strength measurements (e.g., received signal strength indicator (RS SI)) of beacon signals transmitted by one or more ESLs. Trilateration using RSSI has been observed to be highly unreliable, as the RSSI is very susceptible to attenuation, which in turn leads to poor range estimation accuracy. Instead, the weighted centroid algorithm is considered to be much more robust to attenuation and non-line-of-sight (NLOS) effects.
[0060] Machine learning may be used to generate models that may be used to facilitate various aspects associated with processing of data. One specific application of machine learning relates to generation of measurement models for processing of reference signals for positioning (e.g., positioning reference signal (PRS)), such as feature extraction, reportingQC2503639WOQualcomm Ref. No. 2503639WO18 / 49of reference signal measurements (e.g., selecting which extracted features to report), and so on.
[0061] Machine learning models are generally categorized as either supervised or unsupervised.A supervised model may further be sub-categorized as either a regression or classification model. Supervised learning involves learning a function that maps an input to an output based on example input-output pairs. For example, given a training dataset with two variables of age (input) and height (output), a supervised learning model could be generated to predict the height of a person based on their age. In regression models, the output is continuous. One example of a regression model is a linear regression, which simply attempts to find a line that best fits the data. Extensions of linear regression include multiple linear regression (e.g., finding a plane of best fit) and polynomial regression (e.g., finding a curve of best fit).
[0062] Another example of a machine learning model is a decision tree model. In a decision tree model, a tree structure is defined with a plurality of nodes. Decisions are used to move from a root node at the top of the decision tree to a leaf node at the bottom of the decision tree (i.e., a node with no further child nodes). Generally, a higher number of nodes in the decision tree model is correlated with higher decision accuracy.
[0063] Another example of a machine learning model is a decision forest. Random forests are an ensemble learning technique that builds off of decision trees. Random forests involve creating multiple decision trees using bootstrapped datasets of the original data and randomly selecting a subset of variables at each step of the decision tree. The model then selects the mode of all of the predictions of each decision tree. By relying on a “majority wins” model, the risk of error from an individual tree is reduced.
[0064] Another example of a machine learning model is a neural network (NN). A neural network is essentially a network of mathematical equations. Neural networks accept one or more input variables, and by going through a network of equations, result in one or more output variables. Put another way, a neural network takes in a vector of inputs and returns a vector of outputs.
[0065] FIG. 5 illustrates an example neural network 500, according to aspects of the disclosure.The neural network 500 includes an input layer ‘i’ that receives ‘n’ (one or more) inputs (illustrated as “Input 1,” “Input 2,” and “Input n”), one or more hidden layers (illustrated as hidden layers ‘hl,’ ‘h2,’ and ‘h3 ’) for processing the inputs from the input layer, andQC2503639WOQualcomm Ref. No. 2503639WO19 / 49an output layer ‘o’ that provides ‘m’ (one or more) outputs (labeled “Output 1” and “Output m”). The number of inputs ‘n,’ hidden layers ‘h,’ and outputs ‘m’ may be the same or different. In some designs, the hidden layers ‘h’ may include linear function(s) and / or activation function(s) that the nodes (illustrated as circles) of each successive hidden layer process from the nodes of the previous hidden layer.
[0066] In classification models, the output is discrete. One example of a classification model is logistic regression. Logistic regression is similar to linear regression but is used to model the probability of a finite number of outcomes, typically two. In essence, a logistic equation is created in such a way that the output values can only be between ‘0’ and ‘1.’ Another example of a classification model is a support vector machine. For example, for two classes of data, a support vector machine will find a hyperplane or a boundary between the two classes of data that maximizes the margin between the two classes. There are many planes that can separate the two classes, but only one plane can maximize the margin or distance between the classes. Another example of a classification model is Naive Bayes, which is based on Bayes Theorem. Other examples of classification models include decision tree, random forest, and neural network, similar to the examples described above except that the output is discrete rather than continuous.
[0067] Unlike supervised learning, unsupervised learning is used to draw inferences and find patterns from input data without references to labeled outcomes. Two examples of unsupervised learning models include clustering and dimensionality reduction.
[0068] Clustering is an unsupervised technique that involves the grouping, or clustering, of data points. Clustering is frequently used for customer segmentation, fraud detection, and document classification. Common clustering techniques include k-means clustering, hierarchical clustering, mean shift clustering, and density-based clustering. Dimensionality reduction is the process of reducing the number of random variables under consideration by obtaining a set of principal variables. In simpler terms, dimensionality reduction is the process of reducing the dimension of a feature set (in even simpler terms, reducing the number of features). Most dimensionality reduction techniques can be categorized as either feature elimination or feature extraction. One example of dimensionality reduction is called principal component analysis (PCA). In the simplest sense, PCA involves project higher dimensional data (e.g., three dimensions) to a smaller space (e.g., two dimensions). This results in a lower dimension of data (e.g.,QC2503639WOQualcomm Ref. No. 2503639WO20 / 49two dimensions instead of three dimensions) while keeping all original variables in the model.
[0069] Regardless of which machine learning model is used, at a high-level, a machine learning module (e.g., implemented by a processing system) may be configured to iteratively analyze training input data (e.g., measurements of reference signals to / from various target UEs) and to associate this training input data with an output data set (e.g., a set of possible or likely candidate locations of the various target UEs), thereby enabling later determination of the same output data set when presented with similar input data (e.g., from other target UEs at the same or similar location).
[0070] Application services are a pool of services, such as load balancing, application performance monitoring, application acceleration, autoscaling, micro segmentation, service proxy, service discovery, etc., needed to optimally deploy, run, and improve applications. Services and applications are both software programs, but they generally have differing traits. Broadly, services often target smaller and more isolated functions than applications, and applications often expose and call services, including services in other applications.
[0071] Web services are a type of application service that can be accessed via a web address for direct application-to-application interaction. Web services can be local, distributed, or web-based. Web services are built on top of open standards, such as TCP / IP, hypertext transfer protocol (HTTP), Java, hypertext markup language (HTML), and extensible markup language (XML), and therefore, web services are not tied to any one operating system or programming language. As such, software applications written in various programming languages and running on various platforms can use web services to exchange data over computer networks like the Internet in a manner similar to interprocess communication on a single computer. For example, a client can invoke a web service by sending an XML message to the web service and waiting for a corresponding XML response.
[0072] An application programming interface (API) is an interface that facilitates interaction between different systems (e.g., hardware, firmware, and / or software entities or levels). More specifically, an API is a defined set of rules, commands, permissions, and / or protocols that allow one system to interact with, and access data from, another system. For example, an API may provide an interface for a higher level of software (e.g., anQC2503639WOQualcomm Ref. No. 2503639WO21 / 49application, a web service, an application service, etc.) to access a lower level of software (e.g., a microservice, the operating system, BIOS, firmware, device drivers, etc.) or a hardware component (e.g., a universal serial bus (USB) controller, a memory controller, a transceiver, etc.). Since a web service exposes an application’s data and functionality, every web service is effectively an API, but not every API is a web service.
[0073] One type of API for building microservices applications is the representational state transfer API, also known as the “REST API” or the “RESTful API.” The REST API is a set of web API architecture principles, meaning that to be a REST API, the interface must adhere to certain architectural constraints. The REST API typically uses HTTP commands and secure sockets layer (SSL) encryption. It is language agnostic insofar as it can be used to connect applications and microservices written in different programming languages. The commands common to the REST API include HTTP PUT, HTTP POST, HTTP DELETE, HTTP GET, and HTTP PATCH. Developers can use these REST API commands to perform actions on different “resources” within an application or service, such as data in a database. REST APIs can use uniform resource locators (URLs) to locate and indicate the resource on which to perform an action.
[0074] Microservices are individual small, autonomous, independent services and / or functions that together form a larger microservices-based application. Within the application, each microservice performs one defined function, such as authenticating users or retrieving a particular type of data. The goal of the microservices, which are typically languageindependent, is to enable them to fit into any type of application and communicate or cooperate with each other to achieve the overall purpose of the larger microservices-based application. When connecting microservices to create a microservices-based application, APIs define the rules that prevent and permit the actions of and interactions between individual microservices. For example, REST APIs may be used as the rules, commands, permissions, and / or protocols that integrate the individual microservices to function as a single application.
[0075] Webhooks enable the interaction between web-based applications using custom callbacks. The use of webhooks allows web-based applications to automatically communicate with other web-based applications. Unlike traditional systems where one system (the “subject” system) continuously polls another system (the “observer” system) for certain data, webhooks allow the observer system to push the data to the subjectQC2503639WOQualcomm Ref. No. 2503639WO22 / 49system automatically whenever the event occurs. This reduces a significant load on the two systems, as calls are made between the two systems only when a designated event occurs.
[0076] Webhooks communicate via HTTP and rely on the presence of static URLs that point to APIs in the subject system that should be notified when an event occurs on the observer system. Thus, the subject system needs to designate one or more URLs that will accept event notifications from the observer system.
[0077] FIG. 6 is a diagram 600 illustrating example interaction between an application 610, an application service 620, an operating system (OS) 630, and hardware 640 using various APIs, according to aspects of the disclosure. In some aspects, the application 610, application service 620, operating system 630, and hardware 640 may be incorporated in the same device (e.g., a UE, a base station, etc.).
[0078] As shown in FIG. 6, the application service 620 (which may be a web service) comprises two microservices 622a and 622b (collectively microservices 622). As will be appreciated, however, the application service 620 may comprise more or fewer than two microservices 622. In some cases, the application 610 may access the individual microservices 622 directly via their respective APIs 624a and 624b (collectively APIs 624). This is illustrated in FIG. 6 by application 610 invoking microservice 622b via API 624b. Alternatively, the application 610 may invoke the application service 620 via an API 624c for the application service 620. The application service 620 can then invoke the appropriate microservice(s) 622 via the respective APIs 624. This is illustrated in FIG. 6 by the application service 620 invoking microservice 622a via API 624a on behalf of the application 610.
[0079] If invoked by the application 610, the microservices 622 can respond to the application 610 via the application’s 610 callback 612. Alternatively, if invoked by the application service 620, the microservice 622 can respond to the application service 620 via the application service’s 620 callback 626c. In either case, the client (either the application 610 or the application service 620) may invoke the microservice(s) 622 by sending, for example, an XML message to the microservice 622 via the respective API 624, and the microservice 622 may respond to the client by sending a corresponding XML response to the callback 612.QC2503639WOQualcomm Ref. No. 2503639WO23 / 49
[0080] The microservices 622 may access various subsystems within the operating system 630 via the subsystems’ respective APIs. In the example of FIG. 6, the operating system 630 includes a location subsystem 632a and a communications subsystem 632b (collectively subsystems 632). The location subsystem 632a may comprise software and / or firmware for determining the location of a mobile device (e.g., a UE). The mobile device being located may be the device that includes the operating system 630 (e.g., a UE calculating its own location, as in the case of UE-based positioning) or another device that does not include the operating system 630 (e.g., where a location server estimates a UE’ s location). The communications subsystem 632b may similarly comprise software and / or firmware for enabling wireless communications by the device including the operating system 630. For example, the communications subsystem 632b may implement lower layer communication functionality (e.g., MAC layer functionality, RRC layer functionality, etc.).
[0081] The subsystems 632 each expose respective APIs 634a and 634b (collectively APIs 634) to the higher architecture levels. The microservices 622 may invoke the subsystems 632 via their respective APIs 634, and the subsystems 632 may respond to the microservices 622 via the microservices’ 622 callbacks 626a and 626b (collectively callbacks 626). In the example of FIG. 6, the microservice 622a invokes the location subsystem 632a and the microservice 622b invokes the communications subsystem 632b within the operating system 630. As such, microservice 622a may be a location-related microservice and microservice 622b may be a communications-related microservice. However, as will be appreciated, either microservice 622 may invoke either subsystem 632 via its respective API 634.
[0082] In the example of FIG. 6, the hardware 640 includes a satellite signal receiver 642a, one or more WWAN transceivers 642b, and one or more short-range wireless transceivers 642c (collectively hardware components 642). The satellite signal receiver 642a may correspond to, for example, satellite signal receiver 330 or 370 in FIGS. 3A and 3B. The one or more WWAN transceivers 642b may correspond to, for example, the one or more WWAN transceivers 310 or 350 in FIGS. 3 A and 3B. The one or more short-range wireless transceivers 642c may correspond to, for example, the one or more short-range wireless transceivers 320 or 360 in FIGS. 3A and 3B.QC2503639WOQualcomm Ref. No. 2503639WO24 / 49
[0083] In the example of FIG. 6, the location subsystem 632a may send commands (e.g., requests for measurements of reference signals, requests to transmit reference signals, etc.) to the satellite signal receiver 642a, the one or more WWAN transceivers 642b, and / or the one or more short-range wireless transceivers 642c via their APIs 644a, 644b, and 644c, respectively. The satellite signal receiver 642a, the one or more WWAN transceivers 642b, and / or the one or more short-range wireless transceivers 642c may send responses (e.g., measurements of reference signals, acknowledgments, etc.) to the commands to the location subsystem 632a via callback 636a. Similarly, the communications subsystem 632b may send information to be transmitted wirelessly (e.g., user data, measurement reports, etc.) to the one or more WWAN transceivers 642b and / or the one or more short- range wireless transceivers 642c via their APIs 644b and 644c, respectively. The one or more WWAN transceivers 642b and / or the one or more short-range wireless transceivers 642c may send information received wirelessly (e.g., user data, location requests, positioning assistance data, etc.) to the communications subsystem 632b via callback 636b.
[0084] As a specific positioning example in the context of FIG. 6, the device incorporating the illustrated architecture may be a mobile device, and the application 610 may be an application that uses the location of the mobile device (e.g., a UE), such as a navigation application (e.g., running locally on the mobile device). The application 610 therefore invokes application service 620 (via API 624c), which invokes microservice 622a (via API 624a), or invokes microservice 622a directly (via API 624a). The command from the application 610 indicates that the application 610 is requesting the location of the mobile device, and may include (or additional commands may include) other information related to the requested location fix, such as the requested quality of service (QoS) (e.g., accuracy and latency).
[0085] Based on the QoS of the location request, the known capabilities of the mobile device (e.g., available positioning technologies, such as satellite-based, NR-based, Wi-Fi-based, etc.), the available reference signal configurations (e.g., from nearby base stations), and the like, the microservice 622a calls the location subsystem 632a (via API 634a). Note that the microservice 622a may coordinate with other microservices, other application services, other applications, and the like to obtain the information necessary to locate the mobile device. For example, the microservice 622a may need to access anotherQC2503639WOQualcomm Ref. No. 2503639WO25 / 49microservice associated with one or more base stations the mobile device is expected to measure in order to perform an NR-based positioning procedure.
[0086] The microservice 622a may select the positioning technology to use to obtain the location of the mobile device based on the known capabilities of the mobile device and the requested QoS. For example, using the satellite signal receiver 642a may provide high accuracy and low latency but it may be turned off. As another example, using the one or more WWAN transceivers 642b may provide low latency, but if the mobile device is indoors, the accuracy may be poor. Based on the selected positioning technology, the microservice 622a sends one or more commands to the location subsystem 632a requesting the location subsystem 632a to invoke the satellite signal receiver 642a, the one or more WWAN transceivers 642b, or the one or more short-range wireless transceivers 642c. Also depending on the type of positioning technology selected, the microservice 622a may provide commands regarding which reference signals to measure, which reference signals to transmit, and the like. In addition, the microservice 622a may indicate the accuracy and latency needed for the positioning measurements.
[0087] Based on the commands from the microservice 622a, the location subsystem 632a invokes the appropriate hardware component(s) (via one or more of APIs 644). For example, if the positioning technology is NR-based, the location subsystem 632a may transmit commands to the one or more WWAN transceivers 642b to measure and / or transmit certain reference signals at certain times and on certain frequencies. In addition, based on the requested accuracy and latency, the location subsystem 632a may increase or decrease the amount of power and / or processing resources allocated to the one or more WWAN transceivers 642b. For example, for a higher accuracy requirement, the location subsystem 632a may dedicate more power and / or processing resources to the one or more WWAN transceivers 642b.
[0088] The location subsystem 632a receives (via callback 636a) positioning measurements (e.g., reception times, transmission times, signal strengths, etc.) from the one or more WWAN transceivers 642b and passes them to the microservice 622a (via callback 626a). The microservice 622a can then calculate the location of the mobile device based on the measurements and any other available information (e.g., the location(s) of the base station(s) transmitting the measured reference signals). The microservice 622a providesQC2503639WOQualcomm Ref. No. 2503639WO26 / 49the calculated location of the mobile device to the application 610 via callback 612 or via application service 620 (depending on which entity invoked the microservice 622a).
[0089] In certain aspects, the application 610 may provide credentials or other authorization to the microservice 622a indicating that the application 610 is permitted to access the location of the mobile device. Alternatively, upon receiving the request from the application 610, the microservice 622a may determine whether the application 610 is authorized. This check may be performed via another microservice, for example, or by invoking the operating system 630 to determine whether the application 610 has permission to access the mobile device’s location. Similarly, the microservice 622a may need to provide credentials or other authorization to the operating system 630 to indicate that the microservice 622a is permitted to access the location of the mobile device. Alternatively, upon receiving the request from the microservice 622a, the operating system 630 may determine whether the microservice 622a is authorized.
[0090] In certain aspects, the application 610 may use a webhook to obtain the location of the mobile device. In that way, the application 610 will be informed whenever the mobile device moves from one location to another. In this case, the observer system would be the microservice 622a and the subject system would be the application 610. Instead of the application 610 having to periodically call the microservice 622a to check whether the mobile device’s location has changed, a webhook created in the application 610 would allow the microservice 622a to push any change in the mobile device’s location to the application 610 automatically through a registered URL. The microservice 622a may periodically perform positioning operations to determine the location of the mobile device in order to report changes to the application 610.
[0091] Similarly, the microservice 622a may use a webhook to obtain changes in the location of the mobile device. In this case, however, because the microservice 622a coordinates location determinations for certain types of positioning technologies (e.g., NR-based, WiFi-based), the webhook may only apply to certain other types of positioning technologies (e.g., satellite-based, sensor-based). For example, if the location subsystem 632a coordinates satellite-based positioning via the satellite signal receiver 642a, it can report any detected change in location to the microservice 622a via the webhook.
[0092] In some cases, the application 610, the application service 620, the operating system 630, and the hardware 640 may be distributed across multiple devices (e.g., a UE, a web server,QC2503639WOQualcomm Ref. No. 2503639WO27 / 49a location server, etc.). For example, the application 610 may be running on a location server (e.g., LMF 270), the application service 620 may be running on a web server, and the operating system 630 and hardware 640 may be incorporated in a UE (e.g., UE 204).
[0093] In some aspects, the intent of a user (e.g., a retail customer) may be predicted based on the location, movement, and / or detected behavior of the user in a given environment, such as a retail establishment (e.g., a supermarket, a department store, a specialty store, or a membership warehouse). A retailer may use one or more location-based technologies available in a store to monitor the location, movement and / or behavior of a user, infer shopping preferences of the user, and provide a recommendation to the user for one or more products based on the inferred preferences.
[0094] In some aspects, after a user enters a store, the location of the user may be tracked by one or more location-based technologies to derive a trajectory. In some aspects, location- related information of the user may include a dwell time (e.g., the amount of time the user spends at or near a location of interest, such as near a shelf or rack), as well as the associated user behavior, which may be used to predict the intent of the user (e.g., the intent to buy a product or a class of products). In some aspects, the intent of the user may be inferred from location-related information by one or more artificial intelligence / machine learning (AI / ML) models.
[0095] In some aspects, location-based technologies that may be used by the retailer may include ESLs, Wi-Fi devices, cameras, RF sensors, inertial measurement units (IMUs), or the like. In some implementations, ESLs may be deployed to estimate the location of the user based on signal strength measurements (e.g., RSSI) of beacon signals transmitted by one or more ESLs. In some implementations, Wi-Fi devices may be deployed to estimate the location of the user based on signal strength measurements (e.g., RSSI) or round trip time (RTT) measurements of Wi-Fi signals. In some implementations, RF sensors may make similar measurements to estimate the location of the user in a similar manner. In some implementations, the IMU in the UE of the customer may measure the step count or the rate of variation of movements by the customer, and the measured IMU data may be transmitted to the retailer.
[0096] In some implementations, cameras may be used for capturing images of the users, and computer vision methods may be used for detecting the facial expression, gaze, emotion and / or gait of the user. The intent of the user may be inferred from the detected facialQC2503639WOQualcomm Ref. No. 2503639WO28 / 49expression, gaze, emotion and / or gait. In some implementations, RF sensors may be used for detecting some aspects of user behavior. For example, RF sensors may be used to detect the breathing pattern and / or heartbeat of one or more users in a retail environment, and user behavior may be inferred at least in part from the breathing pattern and / or heartbeat.
[0097] In some aspects, the dwell time of the user may indicate that the user is idling or hovering in a given area for an extended period of time (e.g., for at least a threshold amount of time). In some aspects, the dwell time may be used in combination with the associated user behavior to infer his or her desire or preference for certain products (e.g., hovering over a relatively small area close to a particular shelf, gazing at certain products, and / or having a facial expression indicating an emotion or interest toward certain products).
[0098] In some aspects, the server may infer the intent or preference of the user from the dwell time and the associated user behavior. In some aspects, the server may provide recommendations to the user regarding one or more products (or one or more classes of products) based on the dwell time in that area and the associated user behavior, thereby allowing the retailer to improve shopping experience for the users. For example, if a user appears to be confused or wondering about a certain product but there is a sufficiently long dwell time near that product, then the retailer may recommend that product to the user based on an inference of the intention of the user.
[0099] In some aspects, the server may transmit a notification to the user indicating a recommendation of one or more products in various manners. For example, the notification may be transmitted to the user via a UE carried by the user. In some implementations, the notification of a recommended product may be sent via vibration, sound, and / or pop-up on a UE application. In some implementations, the notification may include additional information related to the recommended product, such as ratings, reviews, detailed features, specifications, or the like. In some aspects, the notification may include an offer to assist the user in purchasing the product.
[0100] In some aspects, the user may be provided with options to select preferences for receiving notifications of product recommendations on the UE application. For example, the user may have the option of enabling or disabling on-the-fly product recommendations from the server.QC2503639WOQualcomm Ref. No. 2503639WO29 / 49
[0101] In some aspects, an inference may be made by the server that the user is searching for a product instead of intending to purchase a product based on the dwell time and the associated user behavior. If the server infers that the user is searching for a product, then it may provide a notification to offer assistance to the user in finding that product (e.g., via a pop-up notification on the UE, or a prompt on augmented reality (AR) glasses if worn by the user).
[0102] In some implementations, the notification may be transmitted to the user via an ESL on a shelf in proximity to the current location of the user. For example, the ESL may notify the user by blinking or displaying a color, icon or image specific to that user. In some aspects, the user may be given an option to press an ESL button to see additional information regarding that product, including, for example, detailed ratings of that product.
[0103] In some aspects, the notification may include updated ratings of recommended products based on the dwell time and / or behavior of the user if the ratings have changed over time. For example, a product may have initially received rave reviews from potential customers but few customers have actually bought it.
[0104] In some aspects, depending on user trajectory, dwell time and associated behavior, the server may optimize the energy consumption or efficiency of some or all components of location-based technologies within a retail establishment. For example, the server may decide to power on or off certain location services (e.g. ESLs in specific corridors of a store) based on the locations and dwell times of users. If the dwell times of users are very short or nonexistent in a given corridor, then the ESLs or beacons in that corridor may be powered off at least temporarily to save energy.
[0105] In some aspects, the server may decide to increase or decrease the periodicity of signal transmissions of ESLs, Wi-Fi devices and / or beacons based on the dwell times of users at different locations (e.g., corridors of a store). In some aspects, the server may decide to increase or decrease the transmit power of ESLs and / or beacons based on the dwell times of users at different locations. For example, the periodicity or transmit power of these devices may be increased, or additional ESLs may be turned on in a specific corridor, if user behavior entails that better positioning performance is needed (e.g., if users appear confused and wandering in that corridor).QC2503639WOQualcomm Ref. No. 2503639WO30 / 49
[0106] In some aspects, historical data of user traj ectory, dwell time and associated behavior may be acquired over time for a better understanding of user preferences for certain products. In some aspects, a user may be offered a suggested trajectory and shopping list on the next visit. In a warehouse use case, for example, staff members may be offered a suggested trajectory based on past trajectories inferred from ESL measurements.
[0107] In some aspects, multiple user trajectories may be stored in a database and used as a reference for recommending or predicting the trajectory of a new user. In some aspects, corresponding trajectories may be inferred or predicted in a different store (e.g. in a different store of the same store chain). In some aspects, the trajectories, dwell times and / or user behavior may be compared across different stores and adjusted or modified accordingly.
[0108] FIG. 7 illustrates an example method 700 of positioning, according to aspects of the disclosure. In some aspects, method 700 may be performed by a server (e.g., any of the UEs 302, base stations 304, or network entities 306 described herein).
[0109] At operation 710, the server may obtain location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior.
[0110] In some aspects, where the server resides in a UE, operation 710 may be performed by the one or more WWAN transceivers 310, the one or more short-range wireless transceivers 320, the one or more processors 332, memory 340, and / or positioning component 342, any or all of which may be considered means for performing this operation.
[0111] In some aspects, where the server resides in a base station or base station component (e.g., as a wireless communications access point), operation 710 may be performed by the one or more WWAN transceivers 350, the one or more short-range wireless transceivers 360, the one or more network transceivers 380, the one or more processors 384, memory 386, and / or positioning component 388, any or all of which may be considered means for performing this operation.
[0112] In some aspects, where the server resides in a network entity (e.g., a central management entity, an edge server, an over-the-top (OTT) server, a cloud, etc.), operation 710 may be performed the one or more network transceivers 390, the one or more processors 394,QC2503639WOQualcomm Ref. No. 2503639WO31 / 49memory 396, and / or positioning component 398, any or all of which may be considered means for performing this operation.
[0113] At operation 720, the server may transmit a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.
[0114] In some aspects, where the server resides in a UE, operation 720 may be performed by the one or more WWAN transceivers 310, the one or more short-range wireless transceivers 320, the one or more processors 332, memory 340, and / or positioning component 342, any or all of which may be considered means for performing this operation.
[0115] In some aspects, where the server resides in a base station or base station component (e.g., as a wireless communications access point), operation 720 may be performed by the one or more WWAN transceivers 350, the one or more short-range wireless transceivers 360, the one or more network transceivers 380, the one or more processors 384, memory 386, and / or positioning component 388, any or all of which may be considered means for performing this operation.
[0116] In some aspects, where the server resides in a network entity (e.g., a central management entity, an edge server, an over-the-top (OTT) server, a cloud, etc.), operation 720 may be performed the one or more network transceivers 390, the one or more processors 394, memory 396, and / or positioning component 398, any or all of which may be considered means for performing this operation.
[0117] Method 700 may include additional implementations, such as any single implementation or any combination of implementations described below and / or in connection with one or more other processes described elsewhere herein.
[0118] In some aspects, the location-related information is obtained from one or more electronic shelf labels (ESLs), one or more short-range wireless devices, one or more cameras, one or more radio frequency (RF) sensors, one or more inertial measurement units (IMUs), or any combination thereof.
[0119] In some aspects, the associated user behavior includes movement over a relatively large area, movement over a relatively small area, facial expression, displaying of emotion, gazing at a product, breathing pattern, heartbeat, or any combination thereof.QC2503639WOQualcomm Ref. No. 2503639WO32 / 49
[0120] In some aspects, the movement over a relatively large area, the movement over a relatively small area, the facial expression, the display of emotion, the gazing at a product, or any combination thereof, is detected by the one or more cameras.
[0121] In some aspects, the breathing pattern, the heartbeat, or any combination thereof, is detected by the one or more RF sensors.
[0122] In some aspects, method 700 includes determining the recommendation for the one or more products by inferring a user interest in the one or more products based at least in part on the dwelling time at or near the location of interest.
[0123] In some aspects, the user interest in the one or more products is further inferred based at least in part on the associated user behavior.
[0124] In some aspects, a state of mind of the user regarding the one or more products is inferred based at least in part on the associated user behavior.
[0125] In some aspects, transmitting the notification to the user comprises transmitting the notification to the user via a user equipment (UE) of the user, transmitting the notification to the user via an electronic shelf label (ESL) at or near the location of interest, or a combination of both.
[0126] In some aspects, the notification is transmitted to the user by vibration, sound, pop-up, or any combination thereof, on an application of the UE.
[0127] In some aspects, the notification is transmitted to the user by blinking, change of color, or any combination thereof, on the ESL.
[0128] In some aspects, the notification further includes one or more ratings of the one or more products, one or more reviews of the one or more products, one or more features of the one or more products, one or more specifications of the one or more products, an offer of assistance in purchasing the one or more products, or any combination thereof.
[0129] In some aspects, method 700 includes powering on or off one or more location or sensing devices based on the dwell time, changing a periodicity of the one or more location or sensing devices based on the dwell time, changing transmit power of the one or more location or sensing devices based on the dwell time, or any combination thereof.
[0130] In some aspects, the recommendation of the one or more products is further inferred at least in part from past location-related information of the user in a same retail establishment or a different retail establishment.QC2503639WOQualcomm Ref. No. 2503639WO33 / 49
[0131] Although FIG. 7 shows example blocks of method 700, in some implementations, method 700 may include additional blocks, fewer blocks, different blocks, or differently arranged blocks than those depicted in FIG. 7. Additionally, or alternatively, two or more of the blocks of method 700 may be performed in parallel, or performed in a difference sequence from the sequence listed in FIG. 7.
[0132] As will be appreciated, a technical advantage of the method 700 is that, by using locationbased technologies to infer user intentions or preferences, the described techniques may be used to provide personalized and useful product recommendations to users.
[0133] In the detailed description above it can be seen that different features are grouped together in examples. This manner of disclosure should not be understood as an intention that the example clauses have more features than are explicitly mentioned in each clause. Rather, the various aspects of the disclosure may include fewer than all features of an individual example clause disclosed. Therefore, the following clauses should hereby be deemed to be incorporated in the description, wherein each clause by itself can stand as a separate example. Although each dependent clause can refer in the clauses to a specific combination with one of the other clauses, the aspect(s) of that dependent clause are not limited to the specific combination. It will be appreciated that other example clauses can also include a combination of the dependent clause aspect(s) with the subject matter of any other dependent clause or independent clause or a combination of any feature with other dependent and independent clauses. The various aspects disclosed herein expressly include these combinations, unless it is explicitly expressed or can be readily inferred that a specific combination is not intended (e.g., contradictory aspects, such as defining an element as both an electrical insulator and an electrical conductor). Furthermore, it is also intended that aspects of a clause can be included in any other independent clause, even if the clause is not directly dependent on the independent clause.
[0134] Implementation examples are described in the following numbered clauses:
[0135] Clause 1. A method of positioning performed by a server, comprising: obtaining location- related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; and transmitting a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.QC2503639WOQualcomm Ref. No. 2503639WO34 / 49
[0136] Clause 2. The method of clause 1, wherein the location-related information is obtained from: one or more electronic label devices; one or more short-range wireless devices; one or more cameras; one or more radio frequency (RF) sensors; one or more inertial measurement units (IMUs); or any combination thereof.
[0137] Clause 3. The method of clause 2, wherein the associated user behavior includes:movement over a relatively large area; movement over a relatively small area; facial expression; display of emotion; gazing at a product; breathing pattern; heartbeat; or any combination thereof.
[0138] Clause 4. The method of clause 3, wherein the movement over a relatively large area, the movement over a relatively small area, the facial expression, the display of emotion, the gazing at a product, or any combination thereof, is detected by the one or more cameras.
[0139] Clause 5. The method of any of clauses 3 to 4, wherein the breathing pattern, the heartbeat, or any combination thereof, is detected by the one or more RF sensors.
[0140] Clause 6. The method of any of clauses 1 to 5, further comprising: determining the recommendation for the one or more products by inferring a user interest in the one or more products based at least in part on the dwelling time at or near the location of interest.
[0141] Clause 7. The method of clause 6, wherein the user interest in the one or more products is further inferred based at least in part on the associated user behavior.
[0142] Clause 8. The method of clause 7, wherein a state of mind of the user regarding the one or more products is inferred based at least in part on the associated user behavior.
[0143] Clause 9. The method of any of clauses 1 to 8, wherein transmitting the notification to the user comprises: transmitting the notification to the user via a user equipment (UE) of the user; transmitting the notification to the user via an electronic label device at or near the location of interest; or a combination of both.
[0144] Clause 10. The method of clause 9, wherein the notification is transmitted to the user by vibration, sound, pop-up, or any combination thereof, on an application of the UE.
[0145] Clause 11. The method of any of clauses 9 to 10, wherein the notification is transmitted to the user by blinking, change of color, or any combination thereof, on the electronic label device.
[0146] Clause 12. The method of any of clauses 1 to 11, wherein the notification further includes:one or more ratings of the one or more products; one or more reviews of the one or more products; one or more features of the one or more products; one or more specifications ofQC2503639WOQualcomm Ref. No. 2503639WO35 / 49the one or more products; an offer of assistance in purchasing the one or more products; or any combination thereof.
[0147] Clause 13. The method of any of clauses 1 to 12, further comprising: powering on or off one or more location or sensing devices based on the dwell time; changing a periodicity of the one or more location or sensing devices based on the dwell time; changing transmit power of the one or more location or sensing devices based on the dwell time; or any combination thereof.
[0148] Clause 14. The method of any of clauses 1 to 13, wherein the recommendation of the one or more products is further inferred at least in part from past location-related information of the user in a same retail establishment or a different retail establishment.
[0149] Clause 15. A server, comprising: one or more memories; one or more transceivers; and one or more processors communicatively coupled to the one or more memories and the one or more transceivers, the one or more processors, either alone or in combination, configured to: obtain location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; and transmit, via the one or more transceivers, a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.
[0150] Clause 16. The server of clause 15, wherein the location-related information is obtained from: one or more electronic label devices; one or more short-range wireless devices; one or more cameras; one or more radio frequency (RF) sensors; one or more inertial measurement units (IMUs); or any combination thereof.
[0151] Clause 17. The server of clause 16, wherein the associated user behavior includes:movement over a relatively large area; movement over a relatively small area; facial expression; display of emotion; gaze at a product; breathing pattern; heartbeat; or any combination thereof.
[0152] Clause 18. The server of clause 17, wherein the movement over a relatively large area, the movement over a relatively small area, the facial expression, the display of emotion, the gazing at a product, or any combination thereof, is detected by the one or more cameras.
[0153] Clause 19. The server of any of clauses 17 to 18, wherein the breathing pattern, the heartbeat, or any combination thereof, is detected by the one or more RF sensors.QC2503639WOQualcomm Ref. No. 2503639WO36 / 49
[0154] Clause 20. The server of any of clauses 15 to 19, wherein the one or more processors, either alone or in combination, are further configured to: determine the recommendation for the one or more products by inferring a user interest in the one or more products based at least in part on the dwelling time at or near the location of interest.
[0155] Clause 21. The server of clause 20, wherein the user interest in the one or more products is further inferred based at least in part on the associated user behavior.
[0156] Clause 22. The server of clause 21, wherein a state of mind of the user regarding the one or more products is inferred based at least in part on the associated user behavior.
[0157] Clause 23. The server of any of clauses 15 to 22, wherein the one or more processors configured to transmit the notification to the user comprise the one or more processors, either alone or in combination, configured to: transmit, via the one or more transceivers, the notification to the user via a user equipment (UE) of the user; transmit, via the one or more transceivers, the notification to the user via an electronic label device at or near the location of interest; or a combination of both.
[0158] Clause 24. The server of clause 23, wherein the notification is transmitted to the user by vibration, sound, pop-up, or any combination thereof, on an application of the UE.
[0159] Clause 25. The server of any of clauses 23 to 24, wherein the notification is transmitted to the user by blinking, change of color, or any combination thereof, on the electronic label device.
[0160] Clause 26. The server of any of clauses 15 to 25, wherein the notification further includes:one or more ratings of the one or more products; one or more reviews of the one or more products; one or more features of the one or more products; one or more specifications of the one or more products; an offer of assistance in purchasing the one or more products; or any combination thereof.
[0161] Clause 27. The server of any of clauses 15 to 26, wherein the one or more processors, either alone or in combination, are further configured to: power on or off one or more location or sensing devices based on the dwell time; change a periodicity of the one or more location or sensing devices based on the dwell time; change transmit power of the one or more location or sensing devices based on the dwell time; or any combination thereof.QC2503639WOQualcomm Ref. No. 2503639WO37 / 49
[0162] Clause 28. The server of any of clauses 15 to 27, wherein the recommendation of the one or more products is further inferred at least in part from past location-related information of the user in a same retail establishment or a different retail establishment.
[0163] Clause 29. A server, comprising: means for obtaining location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; and means for transmitting a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.
[0164] Clause 30. The server of clause 29, wherein the location-related information is obtained from: one or more electronic label devices; one or more short-range wireless devices; one or more cameras; one or more radio frequency (RF) sensors; one or more inertial measurement units (IMUs); or any combination thereof.
[0165] Clause 31. The server of clause 30, wherein the associated user behavior includes:movement over a relatively large area; movement over a relatively small area; facial expression; means for displaying of emotion; means for gazing at a product; breathing pattern; heartbeat; or any combination thereof.
[0166] Clause 32. The server of clause 31, wherein the movement over a relatively large area, the movement over a relatively small area, the facial expression, the display of emotion, the gazing at a product, or any combination thereof, is detected by the one or more cameras.
[0167] Clause 33. The server of any of clauses 31 to 32, wherein the breathing pattern, the heartbeat, or any combination thereof, is detected by the one or more RF sensors.
[0168] Clause 34. The server of any of clauses 29 to 33, further comprising: means for determining the recommendation for the one or more products by inferring a user interest in the one or more products based at least in part on the dwelling time at or near the location of interest.
[0169] Clause 35. The server of clause 34, wherein the user interest in the one or more products is further inferred based at least in part on the associated user behavior.
[0170] Clause 36. The server of clause 35, wherein a state of mind of the user regarding the one or more products is inferred based at least in part on the associated user behavior.
[0171] Clause 37. The server of any of clauses 29 to 36, wherein the means for transmitting the notification to the user comprises: means for transmitting the notification to the user viaQC2503639WOQualcomm Ref. No. 2503639WO38 / 49a user equipment (UE) of the user; means for transmitting the notification to the user via an electronic label device at or near the location of interest; or a combination of both.
[0172] Clause 38. The server of clause 37, wherein the notification is transmitted to the user by vibration, sound, pop-up, or any combination thereof, on an application of the UE.
[0173] Clause 39. The server of any of clauses 37 to 38, wherein the notification is transmitted to the user by blinking, change of color, or any combination thereof, on the electronic label device.
[0174] Clause 40. The server of any of clauses 29 to 39, wherein the notification further includes:one or more ratings of the one or more products; one or more reviews of the one or more products; one or more features of the one or more products; one or more specifications of the one or more products; an offer of assistance in purchasing the one or more products; or any combination thereof.
[0175] Clause 41. The server of any of clauses 29 to 40, further comprising: means for powering on or off one or more location or sensing devices based on the dwell time; means for changing a periodicity of the one or more location or sensing devices based on the dwell time; means for changing transmit power of the one or more location or sensing devices based on the dwell time; or any combination thereof.
[0176] Clause 42. The server of any of clauses 29 to 41, wherein the recommendation of the one or more products is further inferred at least in part from past location-related information of the user in a same retail establishment or a different retail establishment.
[0177] Clause 43. A non-transitory computer-readable medium stores computer-executable instructions that, when executed by a server, cause the server to: obtain location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; and transmit a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.
[0178] Clause 44. The non-transitory computer-readable medium of clause 43, wherein the location-related information is obtained from: one or more electronic label devices; one or more short-range wireless devices; one or more cameras; one or more radio frequency (RF) sensors; one or more inertial measurement units (IMUs); or any combination thereof.
[0179] Clause 45. The non-transitory computer-readable medium of clause 44, wherein the associated user behavior includes: movement over a relatively large area; movement overQC2503639WOQualcomm Ref. No. 2503639WO39 / 49a relatively small area; facial expression; display of emotion; gaze at a product; breathing pattern; heartbeat; or any combination thereof.
[0180] Clause 46. The non-transitory computer-readable medium of clause 45, wherein the movement over a relatively large area, the movement over a relatively small area, the facial expression, the display of emotion, the gazing at a product, or any combination thereof, is detected by the one or more cameras.
[0181] Clause 47. The non-transitory computer-readable medium of any of clauses 45 to 46, wherein the breathing pattern, the heartbeat, or any combination thereof, is detected by the one or more RF sensors.
[0182] Clause 48. The non-transitory computer-readable medium of any of clauses 43 to 47, further comprising computer-executable instructions that, when executed by the server, cause the server to: determine the recommendation for the one or more products by inferring a user interest in the one or more products based at least in part on the dwelling time at or near the location of interest.
[0183] Clause 49. The non-transitory computer-readable medium of clause 48, wherein the user interest in the one or more products is further inferred based at least in part on the associated user behavior.
[0184] Clause 50. The non-transitory computer-readable medium of clause 49, wherein a state of mind of the user regarding the one or more products is inferred based at least in part on the associated user behavior.
[0185] Clause 51. The non-transitory computer-readable medium of any of clauses 43 to 50, wherein the computer-executable instructions that, when executed by the server, cause the server to transmit the notification to the user comprise computer-executable instructions that, when executed by the server, cause the server to: transmit the notification to the user via a user equipment (UE) of the user; transmit the notification to the user via an electronic label device at or near the location of interest; or a combination of both.
[0186] Clause 52. The non-transitory computer-readable medium of clause 51, wherein the notification is transmitted to the user by vibration, sound, pop-up, or any combination thereof, on an application of the UE.QC2503639WOQualcomm Ref. No. 2503639WO40 / 49
[0187] Clause 53. The non-transitory computer-readable medium of any of clauses 51 to 52, wherein the notification is transmitted to the user by blinking, change of color, or any combination thereof, on the electronic label device.
[0188] Clause 54. The non-transitory computer-readable medium of any of clauses 43 to 53, wherein the notification further includes: one or more ratings of the one or more products; one or more reviews of the one or more products; one or more features of the one or more products; one or more specifications of the one or more products; an offer of assistance in purchasing the one or more products; or any combination thereof.
[0189] Clause 55. The non-transitory computer-readable medium of any of clauses 43 to 54, further comprising computer-executable instructions that, when executed by the server, cause the server to: power on or off one or more location or sensing devices based on the dwell time; change a periodicity of the one or more location or sensing devices based on the dwell time; change transmit power of the one or more location or sensing devices based on the dwell time; or any combination thereof.
[0190] Clause 56. The non-transitory computer-readable medium of any of clauses 43 to 55, wherein the recommendation of the one or more products is further inferred at least in part from past location-related information of the user in a same retail establishment or a different retail establishment.
[0191] Those of skill in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, commands, information, signals, bits, symbols, and chips that may be referenced throughout the above description may be represented by voltages, currents, electromagnetic waves, magnetic fields or particles, optical fields or particles, or any combination thereof.
[0192] Further, those of skill in the art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the aspects disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the describedQC2503639WOQualcomm Ref. No. 2503639WO41 / 49functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
[0193] The various illustrative logical blocks, modules, and circuits described in connection with the aspects disclosed herein may be implemented or performed with a general purpose processor, a DSP, an ASIC, an FPGA, or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but 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, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration.
[0194] The methods, sequences and / or algorithms described in connection with the aspects disclosed herein may be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module may reside in random access memory (RAM), flash memory, read-only memory (ROM), erasable programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), registers, hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art. An example storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in an ASIC. The ASIC may reside in a user terminal (e.g., UE). In the alternative, the processor and the storage medium may reside as discrete components in a user terminal.
[0195] In one or more example aspects, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage media may be any available media that can be accessed by a computer. By way of example, and not limitation, suchQC2503639WOQualcomm Ref. No. 2503639WO42 / 49computer-readable media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
[0196] While the foregoing disclosure shows illustrative aspects of the disclosure, it should be noted that various changes and modifications could be made herein without departing from the scope of the disclosure as defined by the appended claims. For example, the functions, steps and / or actions of the method claims in accordance with the aspects of the disclosure described herein need not be performed in any particular order. Further, no component, function, action, or instruction described or claimed herein should be construed as critical or essential unless explicitly described as such. Furthermore, as used herein, the terms “set,” “group,” and the like are intended to include one or more of the stated elements. Also, as used herein, the terms “has,” “have,” “having,” “comprises,” “comprising,” “includes,” “including,” and the like does not preclude the presence of one or more additional elements (e.g., an element “having” A may also have B). Further, the phrase “based on” is intended to mean “based, at least in part, on” unless explicitly stated otherwise. Also, as used herein, the term “or” is intended to be inclusive when used in a series and may be used interchangeably with “and / or,” unless explicitly stated otherwise (e.g., if used in combination with “either” or “only one of’) or the alternatives are mutually exclusive (e.g., “one or more” should not be interpreted as “one and more”). Furthermore, although components, functions, actions, and instructions may be described or claimed in the singular, the plural is contemplated unless limitation to the singular isQC2503639WOQualcomm Ref. No. 2503639WO43 / 49explicitly stated. Accordingly, as used herein, the articles “a,” “an,” “the,” and “said” are intended to include one or more of the stated elements. Additionally, as used herein, the terms “at least one” and “one or more” encompass “one” component, function, action, or instruction performing or capable of performing a described or claimed functionality and also “two or more” components, functions, actions, or instructions performing or capable of performing a described or claimed functionality in combination.QC2503639WO
Claims
1. Qualcomm Ref. No. 2503639WO44 / 49CLAIMSWhat is claimed is:
1. A server, comprising:one or more memories;one or more transceivers; andone or more processors communicatively coupled to the one or more memories and the one or more transceivers, the one or more processors, either alone or in combination, configured to:obtain location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; andtransmit, via the one or more transceivers, a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.
2. The server of claim 1, wherein the location-related information is obtained from:one or more electronic label devices;one or more short-range wireless devices;one or more cameras;one or more radio frequency (RF) sensors;one or more inertial measurement units (IMUs);or any combination thereof.
3. The server of claim 2, wherein the associated user behavior includes:movement over a relatively large area;movement over a relatively small area;facial expression;display of emotion;gazing at a product;breathing pattern;heartbeat;or any combination thereof.QC2503639WOQualcomm Ref. No. 2503639WO45 / 494. The server of claim 3, wherein the movement over a relatively large area, the movement over a relatively small area, the facial expression, the display of emotion, the gazing at a product, or any combination thereof, is detected by the one or more cameras.
5. The server of claim 3, wherein the breathing pattern, the heartbeat, or any combination thereof, is detected by the one or more RF sensors.
6. The server of claim 1, wherein the one or more processors, either alone or in combination, are further configured to:determine the recommendation for the one or more products by inferring a user interest in the one or more products based at least in part on the dwelling time at or near the location of interest.
7. The server of claim 6, wherein the user interest in the one or more products is further inferred based at least in part on the associated user behavior.
8. The server of claim 7, wherein a state of mind of the user regarding the one or more products is inferred based at least in part on the associated user behavior.
9. The server of claim 1, wherein the one or more processors configured to transmit the notification to the user comprise the one or more processors, either alone or in combination, configured to:transmit, via the one or more transceivers, the notification to the user via a user equipment (UE) of the user;transmit, via the one or more transceivers, the notification to the user via an electronic label device at or near the location of interest;or a combination of both.
10. The server of claim 9, wherein the notification is transmitted to the user by vibration, sound, pop-up, or any combination thereof, on an application of the UE.QC2503639WOQualcomm Ref. No. 2503639WO46 / 4911. The server of claim 9, wherein the notification is transmitted to the user by blinking, change of color, or any combination thereof, on the electronic label device.
12. The server of claim 1, wherein the notification further includes:one or more ratings of the one or more products;one or more reviews of the one or more products;one or more features of the one or more products;one or more specifications of the one or more products;an offer of assistance in purchasing the one or more products;or any combination thereof.
13. The server of claim 1, wherein the one or more processors, either alone or in combination, are further configured to:power on or off one or more location or sensing devices based on the dwell time; change a periodicity of the one or more location or sensing devices based on the dwell time;change transmit power of the one or more location or sensing devices based on the dwell time;or any combination thereof.
14. The server of claim 1, wherein the recommendation of the one or more products is further inferred at least in part from past location-related information of the user in a same retail establishment or a different retail establishment.
15. A method of positioning performed by a server, comprising:obtaining location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; andtransmitting a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.QC2503639WOQualcomm Ref. No. 2503639WO47 / 4916. The method of claim 15, wherein the location-related information is obtained from:one or more electronic label devices;one or more short-range wireless devices;one or more cameras;one or more radio frequency (RF) sensors;one or more inertial measurement units (IMUs);or any combination thereof.
17. The method of claim 16, wherein the associated user behavior includes:movement over a relatively large area;movement over a relatively small area;facial expression;display of emotion;gazing at a product;breathing pattern;heartbeat;or any combination thereof.
18. A non-transitory computer-readable medium storing computer-executable instructions that, when executed by a server, cause the server to:obtain location-related information of a user, the location-related information including a dwell time of the user at or near a location of interest and associated user behavior; andtransmit a notification to the user, the notification including a recommendation of one or more products inferred at least in part from the location-related information.
19. The non-transitory computer-readable medium of claim 18, wherein the location-related information is obtained from:one or more electronic label devices;one or more short-range wireless devices;one or more cameras;QC2503639WOQualcomm Ref. No. 2503639WO48 / 49one or more radio frequency (RF) sensors;one or more inertial measurement units (IMUs);or any combination thereof.
20. The non-transitory computer-readable medium of claim 19, wherein the associated user behavior includes:movement over a relatively large area;movement over a relatively small area;facial expression;display of emotion;gaze at a product;breathing pattern;heartbeat;or any combination thereof.QC2503639WO