WO2017009518A1 - Methods, apparatuses and computer readable media for causing or enabling performance of a wireless interaction - Google Patents
Methods, apparatuses and computer readable media for causing or enabling performance of a wireless interaction Download PDFInfo
- Publication number
- WO2017009518A1 WO2017009518A1 PCT/FI2015/050503 FI2015050503W WO2017009518A1 WO 2017009518 A1 WO2017009518 A1 WO 2017009518A1 FI 2015050503 W FI2015050503 W FI 2015050503W WO 2017009518 A1 WO2017009518 A1 WO 2017009518A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- user
- remote
- location
- determined
- party
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/20—Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
- H04W4/21—Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/30—Security of mobile devices; Security of mobile applications
- H04W12/33—Security of mobile devices; Security of mobile applications using wearable devices, e.g. using a smartwatch or smart-glasses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/023—Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/026—Services making use of location information using location based information parameters using orientation information, e.g. compass
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/027—Services making use of location information using location based information parameters using movement velocity, acceleration information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/60—Context-dependent security
- H04W12/68—Gesture-dependent or behaviour-dependent
Definitions
- This specification relates to causing or enabling performance of a wireless interaction.
- this specification describes a method comprising causing or enabling an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus and the second direction being a direction of user-interest relative to the user apparatus.
- the method may further comprise one of: determining the first direction based on the location of the user apparatus and the location of the remote apparatus; and receiving information indicative of the first direction.
- the method of may further comprise receiving information indicative of the location of the remote apparatus, and determining the first direction based on the location of the user apparatus and the location of the remote apparatus.
- the location of the remote apparatus may have been determined based on at least one signal passed between the remote apparatus and a positioning device of a positioning system.
- the location of the user apparatus may have been determined based on at least one signal passed between the user apparatus and a positioning device of a or the positioning system.
- the method may further comprise receiving from the positioning system at least one of: information indicative of the determined location of the user apparatus; and the information indicative of the first direction.
- the method may comprise determine the location of the user apparatus using a global navigation satellite system.
- the method may comprise determining the second direction.
- the second direction may correspond to an orientation of the user apparatus with respect to the remote apparatus.
- the orientation of the user apparatus may be determined based on one of: a detected absolute orientation of the user apparatus; and a combination of a heading of the user apparatus and a detected change in orientation of the user apparatus.
- the second direction may be a direction of gaze of a user of the user apparatus or a direction of a gesture performed by a user of the user apparatus.
- the relationship between the first direction and the second direction may satisfy the at least one predetermined condition if a magnitude of an angular separation between the first and second directions is less than a predetermined value.
- the relationship between the first direction and the second direction may satisfy the at least one predetermined condition if a ranking of a magnitude of an angular separation between the first and second directions is higher than or equal to a pre-defined ranking in an ordered set of magnitudes of angular separations between the second direction and directions between the user apparatus and plural remote apparatuses.
- the method may further comprise causing or enabling the interaction only if at least one further predetermined condition with respect to the remote apparatus is satisfied.
- the method may further comprise determining whether a user indication that an interaction with the remote apparatus is desired has been received, and causing or enabling the interaction only if the user indication has been received.
- the method may comprise causing or enabling the interaction, only if a distance between the user apparatus and the remote apparatus satisfies a pre-determined criterion. The distance may satisfy the predetermined criterion if the distance is less than a threshold distance.
- the method may comprise determining a type of the remote apparatus, and causing or enabling an interaction, only if the remote apparatus is determined to be of a pre-defined type.
- the interaction may comprise performance of an active scan for the remote apparatus by the user apparatus. The active scan may be performed using an identifier of the remote apparatus that is received from a server apparatus or the remote apparatus.
- this specification describes a method comprising determining a location of a first third-party apparatus based on a radio frequency signal received from the first third-party apparatus, determining a direction between the first third-party apparatus and a second third-party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus, and causing transmission to the first third-party apparatus of information indicative of the determined direction.
- the method may further comprise determining the location of the second third-party apparatus based on a radio frequency signal received from the second third-party apparatus.
- the method may further comprise determining a distance between the first and second third-party apparatuses, and one of: causing transmission of information indicative of the determined distance; and determining whether the distance satisfies a pre-determined criterion and causing transmission of the information indicative of the determined direction only if the distance does satisfy the pre-determined criterion.
- this specification describes apparatus configured to perform a method as described with respect to either of the first and second aspects.
- this specification describes apparatus comprising at least one processor and at least one memory including computer program code, which when executed by the at least one processor, causes the apparatus to cause or enable an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus and the second direction being a direction of user-interest relative to the user apparatus.
- the computer program code when executed by the at least one processor, may cause the apparatus either to determine the first direction based on the location of the user apparatus and the location of the remote apparatus, or to receive information indicative of the first direction.
- the computer program code when executed by the at least one processor, may cause the apparatus to receive information indicative of the location of the remote apparatus, and to determine the first direction based on the location of the user apparatus and the location of the remote apparatus.
- the location of the remote apparatus may have been determined based on at least one signal passed between the remote apparatus and a positioning device of a positioning system.
- the location of the user apparatus may have been determined based on at least one signal passed between the user apparatus and a positioning device of a or the positioning system.
- the computer program code when executed by the at least one processor, may cause the apparatus to receive from the positioning system at least one of information indicative of the determined location of the user apparatus, and the information indicative of the first direction.
- the computer program code when executed by the at least one processor, may cause the apparatus to determine the location of the user apparatus using a global navigation satellite system.
- the computer program code when executed by the at least one processor, may cause the apparatus to determine the second direction.
- the second direction may correspond to an orientation of the user apparatus with respect to the remote apparatus.
- the orientation of the user apparatus may be determined based on one of a detected absolute orientation of the user apparatus, and a combination of a heading of the user apparatus and a detected change in orientation of the user apparatus.
- the second direction may be a direction of gaze of a user of the user apparatus or a direction of a gesture performed by a user of the user apparatus.
- the relationship between the first direction and the second direction may satisfy the at least one predetermined condition if a magnitude of an angular separation between the first and second directions is less than a predetermined value.
- the relationship between the first direction and the second direction may satisfy the at least one predetermined condition if a ranking of a magnitude of an angular separation between the first and second directions is higher than or equal to a pre-defined ranking in an ordered set of magnitudes of angular separations between the second direction and directions between the user apparatus and plural remote apparatuses.
- the computer program code when executed by the at least one processor, may cause the apparatus to cause or enable the interaction only if at least one further predetermined condition with respect to the remote apparatus is satisfied.
- the computer program code when executed by the at least one processor, may further cause the apparatus to determine whether a user indication that an interaction with the remote apparatus is desired has been received, and to cause or enable the interaction only if the user indication has been received.
- the computer program code when executed by the at least one processor, may cause the apparatus to cause or enable the interaction, only if a distance between the user apparatus and the remote apparatus satisfies a pre-determined criterion. The distance may satisfy the pre-determined criterion if the distance is less than a threshold distance.
- the computer program code when executed by the at least one processor, may cause the apparatus to determine a type of the remote apparatus, and to cause or enable an interaction, only if the remote apparatus is determined to be of a pre-defined type.
- the interaction may comprise performance of an active scan for the remote apparatus by the user apparatus.
- the active scan may be performed using an identifier of the remote apparatus that is received from a server apparatus or the remote apparatus.
- apparatus comprising at least one processor, and at least one memory including computer program code, which when executed by the at least one processor, cause the apparatus to determine a location of a first third-party apparatus based on a radio frequency signal received from the first third-party apparatus, to determine a direction between the first third-party apparatus and a second third-party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus, and to cause transmission to the first third-party apparatus of information indicative of the determined direction.
- the computer program code when executed by the at least one processor, may cause the apparatus to determine the location of the second third-party apparatus based on a radio frequency signal received from the second third-party apparatus.
- the computer program code when executed by the at least one processor, may cause the apparatus to determine a distance between the first and second third-party apparatuses; and one of: to cause transmission of information indicative of the determined distance; and to determine whether the distance satisfies a pre-determined criterion and causing transmission of the information indicative of the determined direction only if the distance does satisfy the pre-determined criterion.
- this specification describes computer-readable code which, when executed by computing apparatus, causes the computing apparatus to perform a method as described with reference to either of the first and second aspects.
- this specification describes a computer-readable medium having computer-readable code stored thereon, the computer readable code, when executed by a least one processor, cause performance of at least causing or enabling an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus and the second direction being a direction of user-interest relative to the user apparatus.
- the computer-readable code stored on the medium of the seventh aspect may further cause performance of any of the operations described with reference to the first aspect.
- this specification describes a computer-readable medium having computer-readable code stored thereon, the computer readable code, when executed by a least one processor, cause performance of at least determining a location of a first third- party apparatus based on a radio frequency signal received from the first third-party apparatus, determining a direction between the first third-party apparatus and a second third-party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus, and causing transmission to the first third- party apparatus of information indicative of the determined direction.
- the computer- readable code stored on the medium of the eighth aspect may further cause performance of any of the operations described with reference to the second aspect.
- this specification describes apparatus comprising means for causing or enabling an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus and the second direction being a direction of user-interest relative to the user apparatus.
- the apparatus of the ninth aspect may further comprise means for causing performance of any of the operations described with reference to the first aspect.
- this specification describes apparatus comprising means for determining a location of a first third-party apparatus based on a radio frequency signal received from the first third-party apparatus, means for determining a direction between the first third- party apparatus and a second third-party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus, and means for causing transmission to the first third-party apparatus of information indicative of the determined direction.
- the apparatus of the tenth aspect may further comprise means for causing performance of any of the operations described with reference to the second aspect.
- Figures lA to iD are simplified schematic illustrations of a communication system l which enables a user selectively to cause wireless interaction between devices;
- Figure 2 is a simplified schematic illustration of an example of one of the user devices shown in Figures lA to iD;
- Figure 3 is a block diagram schematically illustrating an example of a configuration of the device shown in Figure 2;
- Figure 4 is a schematic illustration of another of the user devices of the shown in Figures lA to iD;
- FIG. 5 is a schematic illustration of the server and transceiver apparatuses shown in Figures lA to iD;
- Figure 6 is a schematic illustration of an example of one of the remote apparatuses shown in Figures lA to iD;
- Figures 7A and 7B are flowcharts illustrating various operations which may be performed by one or more of the apparatuses described with reference to Figures lA to 6; and Figure 8 is a flow chart illustrating various operations which may, in some examples, be performed by apparatuses which form part of a positioning system.
- Figures lA to iD are simplified schematic illustrations of a communications system which enables a user selectively to cause performance of an interaction between their user apparatus or device 3, 4 and a remote apparatus 2, for instance in order to obtain additional information from the remote apparatuses 2.
- the system 1 includes user communication apparatus 3, 4, which is configured to cause or enable performance of an interaction with a particular remote apparatus 2 in response to determining that a relationship between a direction from the user communication apparatus 3, 4 and the remote apparatus 2 ("the first direction") and a direction of user- interest relative to the user communication apparatus 3, 4 ("the second direction”) satisfies at least one predetermined condition.
- This provides a simple and efficient process by which a user can cause a wireless interaction between their apparatus and a particular remote apparatus.
- the process can be carried out using third-party apparatuses (both user apparatuses and remote apparatuses) which do not require specialised hardware components such as phased antenna arrays and the like.
- the process may be applicable to legacy devices, modern devices and future devices alike.
- the relationship between the first direction and the second direction may be found to satisfy the at least one predetermined condition if a magnitude of an angular separation between the first and second directions is less than a predetermined value.
- the predetermined value may be very small (e.g. ⁇ to 2 degrees).
- the directions may be found to satisfy the at least one predetermined condition if the first direction is determined to be exactly or substantially exactly aligned with the second direction.
- the predetermined value may be larger, for instance 5, 10, 15, 20 or 25 degrees, in which case the directions may be said to be generally aligned.
- the magnitude of the angular separation between the first and second directions is one of iVlowest magnitudes of plural angular separations between the direction of user interest and directions to each of plural remote apparatuses 2, where N is a pre-defined integer.
- a ranking of the magnitude of the angular separation between the first and second directions may be required to be higher than or equal to a threshold ranking in an ordered set of magnitudes of angular separations between the direction of user interest and directions from the user apparatus 3, 4 to each of plural remote apparatuses 2.
- the smallest magnitude is ranked in first place in the ordered set and a ranking is higher the closer to first place it is.
- the interaction may be caused or enabled between the user apparatus 3, 4 and one or more remote apparatuses 2, the directions to which are the N closest (i.e. have the iVlowest angular separations) to the direction of user-interest.
- the integer N (which is also the threshold ranking) may be definable by the user or the user apparatus 3, 4 or may be pre-configured. For instance, N may be defined as "1", in which case interaction will only occur with the single remote apparatus 3, 4, the direction to which is closest to the direction of user interest.
- the interaction may be caused only if the magnitude of the angular separation is both within an allowed range (i.e.
- N is less than a predetermined value
- the allowed range is 10 degrees and there are five remote devices having angular separations: 5 (for remote apparatus A), 10 (for remote apparatus B), 15 degrees (for remote apparatus C), 12 degrees (for remote apparatus D) and 13 degrees (for remote apparatus E).
- an interaction will only be caused with those remote apparatuses for which the angular separations are both one of the three lowest (i.e.
- apparatuses A, B and D are ten degrees or less. Therefore, an interaction will occur only for apparatuses A and B. So, it can be seen that even though apparatus D has one of the lowest three angular separations, an interaction is not caused because its angular separation is outside the allowable range.
- the direction from the user communication apparatus 3, 4 to the remote apparatus 2 is determined based on at least a location of the user apparatus 3, 4 and a location of the remote apparatus 2. This may be determined by server apparatus 5 or an associated transceiver apparatus 6 (both of which are discussed in more detail below). In such examples, information indicative of the determined first direction may be transmitted to and received by the user apparatus 3, 4. In other examples, the first direction may be determined by the user apparatus 3, 4.
- the user communication apparatus 3, 4 comprises two separate devices, which are in this example a wearable device 3 and a portable communication device 4.
- both devices 3, 4 are only shown together in Figures lA and lD.
- the portable communication device 4 is not shown in Figures iB and iC, it will be understood that it is still carried by the user, for instance in their pocket or bag.
- the location and orientation of the user communication apparatus 3, 4 refers to the location and orientation of the wearable device 3 and not the portable communication device 4.
- the location and the orientation of the portable communication device 4 may not, in some examples, be important as long as it stays sufficiently near to the wearable device 3 so as to maintain a connection with the wearable device 3.
- the communication apparatus 3, 4 may include just a single device (e.g. one of the wearable device 3 and the portable communication device 4). In such examples, the location and orientation of the user communication apparatus 3, 4 should, of course, be understood to relate to the single device.
- the system also includes at least one remote apparatus 2-1 to 2-6 (when the remote apparatuses are being referred to collectively, or in general terms, the reference numeral 2 will be used).
- Each of the remote apparatuses 2 is configured to wirelessly transmit information to and/or receive information from the user communication apparatus 3, 4.
- One or more of the remote apparatuses 2 may be configured to periodically transmit or broadcast data packets (e.g. Bluetooth low energy advertising packets).
- the data packets may include a device address which identifies the remote apparatuses 2 which transmits it and service information relating to a service provided by the remote apparatus 2.
- One or more of the remote apparatuses 2 may be user apparatus associated with another user.
- the system 1 further comprises server apparatus 5 and transceiver apparatus 6.
- the transceiver apparatus 6 is configured to enable the server apparatus 5 to receive information transmitted wirelessly from the user communication apparatus and/ or to transmit information wirelessly to the user communication apparatus 3, 4.
- the remote apparatuses 2 and the server and transceiver apparatuses 5, 6 may in some examples be configured so as to enable wireless signals to be passed between the remote apparatus 2 and the server apparatus 5.
- the server apparatus 5, in some instances, may be a cloud server.
- the user communication apparatus 3, 4 may be configured to determine its own location using a global navigation satellite system (GNSS) such as GPS.
- GNSS global navigation satellite system
- the locations of the remote apparatuses may, where the remote apparatuses are static, be pre-stored at the server apparatus 5 with information indicative of the locations of the remote apparatuses 2 being transmitted from the server apparatus 5 to the user communication apparatus 3, 4.
- each mobile apparatus may be configured to determine its location, for instance using GNSS and to transmit information indicative of its location to the server apparatus 5 which then passes this on to the user communication apparatus 3, 4 ⁇
- the server apparatus 5 may be a positioning server, with the transceiver apparatus 6 being a positioning device with which the user apparatus 3, 4 can
- location information indicative of the computed location can be transmitted to the user communication apparatus 3, 4.
- the communication apparatus 3, 4 may be able to compute its own location based on signals received from the positioning device 6.
- the locations of the remote apparatuses 2 may be pre-stored by the positioning server 5, for instance when the remote apparatuses 2 are static, or may be dynamically determined (for instance based on signals passed between the remote apparatuses 2 and positioning devices 6 of the positioning system) and subsequently provided to the user communication apparatus 3, 4 by the positioning server 5 ⁇
- the positioning server 5 or device 6 instead of transmitting the locations of the remote apparatuses 2 and the user apparatus 3, 4, the positioning server 5 or device 6 may be configured to determine the directions from the user apparatus 3, 4 to each of the remote apparatuses 2. Data indicative of the directions may then be transmitted to the user communication apparatus 3, 4.
- the positioning server 5 may also determine a distance between the user apparatus 3, 4 and each remote apparatus 2. The information indicative of the distances may, in some examples, be transmitted to user communication apparatus 3, 4 (e.g. along with the direction information).
- the positioning device 6 may be a multi-antenna array device which is configured to enable the angle-of-arrival (AoA) of incoming packets received from the apparatuses to be determined. The AoA can then be used to determine the location of the apparatuses.
- AoA angle-of-arrival
- the interaction which is caused or enabled by the user communication apparatus 3, 4 when the relationship between the first and second directions is found to satisfy the at least one predetermined condition may be caused or enabled using a device address of the remote apparatus 2.
- the device address may have been received via a passive scan for broadcasted advertising packets or may have been received from the server apparatus 5 with the location or direction information relating to that remote apparatus 2.
- Receiving the device address from the server apparatus 5 may be beneficial as it may negate or reduce the need for the user apparatus 3, 4 to perform a passive scan for advertising packets. It may also allow the user apparatus 3, 4 to interact with a remote apparatus 2 where it hasn't previously been able to receive a packet from that apparatus, for instance because the signals from the apparatus were attenuated by intervening objects or walls.
- the interaction is an active scan for the remote apparatus 2 to which the first direction relates.
- An active scan may, in some instances, be used to obtain information necessary for forming a connection (such as a paired connection) between the two apparatuses.
- Active scanning may be used by the user communication apparatus 3, 4 in order to obtain further information from the subject of the active scan.
- the further information may be additional to that which can be received by performing a passive scan (e.g. receiving a Bluetooth low energy advertising packet).
- Performing an active scan may include transmitting a request packet in response to which a response packet is received from the subject apparatus of the active scan. The request is directed towards the remote apparatus 2 using the device address of the remote apparatus 2 and may include the device address of the user communication apparatus 3, 4.
- the response packet may include the device address of the remote apparatus 2.
- the further information may be additional information relating to the service provided by the remote apparatus 2.
- the response packet is undirected.
- the response packet may be directed using the device address of the user communication apparatus 3, 4.
- the interaction which is caused by the user communication apparatus 3, 4 when the relationship between the first direction and a second direction satisfies the at least one predetermined condition may be other than an active scan.
- the user communication apparatus 3, 4 may initiate a connection with the remote apparatus 2 in some other way. Once the connection is formed, the user communication apparatus 3, 4 may request the additional information it requires.
- an interaction e.g. an active scan
- the user is able easily to select a particular remote apparatus 2 from which to obtain further information, simply by indicating a direction of interest which is generally towards the remote apparatus. This speeds up receipt of information and, if required, formation of a connection, particularly when many remote apparatuses are in the vicinity as it allows a targeted interaction to be performed. This reduces the number of collisions and improves reliability of
- the direction of user-interest relative to the user apparatus 3, 4 may be a direction corresponding (or directly corresponding) to the orientation of the user apparatus 3, 4 with respect to the remote apparatus 2.
- the orientation of the user apparatus 3, 4 and the determined second direction may be fixed relative to one another.
- the orientation may be defined relative to a surface or edge of one of the devices 3, 4 of the user apparatus.
- the direction may, for instance, be the normal to the particular surface or edge.
- the determined direction of interest of the user may be the normal to an outer surface of the lenses of the spectacles.
- the direction of interest may be a normal to, for instance, a top edge or a back surface of the device 4.
- the user apparatus 3, 4 may include gaze detection components 31, 32 which are configured to determine a direction of a gaze of the user (also referred to as the gaze direction).
- the direction of user-interest may be the gaze direction.
- the user apparatus 3, 4 may further include gesture recognition components 33, 34, configured to determine a direction of a user gesture.
- the gesture may include for instance a manual gesture (e.g.
- FIGS. 1A-1D show a user carrying/wearing their user communication apparatus 3, 4 in an environment in which plural remote apparatuses are present.
- the directions from the user apparatus 3, 4 to the remote apparatuses are illustrated by dashed arrows, marked Di-n.
- the determined direction of user interest is illustrated by the arrow marked D2.
- Figure lB the user and their apparatus 3, 4 is shown to have moved from their initial location Li to a second location L2.
- the route taken by the user is denoted by the series of crosses, each marking intermediate locations on the user's path between the first and second locations Li, L2.
- Each of the intermediate locations may have been determined by the user apparatus 3, 4 or the positioning server 5 as the apparatus is moved.
- Each of the arrows between the intermediate locations represents a heading of the user between the intermediate locations.
- the heading may, in some examples, be determined by the user apparatus 3, 4 or the server apparatus 5, by determining the direction from a particular determined location to a next determined location.
- the heading may be combined with a change in orientation of the user communication apparatus to determine the orientation and so the direction of interest. This may be the case, for instance, when the user apparatus 3, 4 is not capable of determining an absolute orientation of the apparatus (for instance, when it does not include a compass or the like).
- the direction of user interest D2 is shown as being aligned with the direction D1-1 from the user apparatus 3, 4 to a first of the remote apparatuses 2- 1.
- an interaction between the apparatuses e.g. an active scan by the user communication apparatus 3, 4 for the remote apparatus
- the direction of interest D2 may have, for instance, been determined based on the current heading He of the user apparatus (in this example marked by reference He) in combination with a change in orientation (which in Figure lB is zero) or by a means for determining an absolute orientation of the apparatus such as a compass 38.
- the new orientation of the user apparatus (and so, in this example, also the new direction of interest of the user) may be determined by detecting the change in orientation ⁇ and combining (i.e. adding/ subtracting) this with an initial orientation determined based on the current heading He.
- the relative change in orientation ⁇ may be determined using, for instance, a gyroscope 35.
- an absolute orientation of the apparatus may be determined, for instance, using an electronic compass 38.
- the new orientation of the user apparatus 3, 4 has resulted in a determined direction of interest D2 which is aligned with a direction D1-2 from the user apparatus 3, 4 to a second of the remote apparatuses 2-2.
- the distance between the two apparatuses 2 and 3, 4 is less than a threshold distance and so the user apparatus 3, 4 responds by causing or enabling the interaction between apparatuses. This is denoted in Figure lD, by the message marked with reference M.
- Figures lA to lD the direction of user interest D2 is determined based on the orientation of the user apparatus 3,4, this might instead be determined in another way, for instance, using a gaze or gesture direction of the user.
- Figures 2 and 3 illustrate an example of a wearable device 3 which may form at least part of the user communication apparatus 3, 4 described with reference to Figures lA to lD.
- the device 3 comprises a controller 30 which is configured to control the other components of the device 3 which may include a transceiver 37 and an associated antenna 37-1.
- the transceiver 37 and antenna 37-1 may be operable under the control of the controller to receive and/or transmit data to/from the remote apparatuses 2. This may be the case particularly when the user apparatus 3, 4 only includes the wearable device 3 and not the accompanying portable communication device 4.
- the transceiver 37 may additionally or alternatively be configured under the control of the controller 30 to receive data such as location information from the server apparatus 5 via the transceiver apparatus 6. In examples in which the location is determined via a positioning system, the transceiver 37 may also be operable under the control of the controller 30 to transmit (or receive) one or more signals (e.g.
- the controller 30 may cause the transceiver 37 to transmit and/or receive data to/from the portable communication device 4.
- the wearable device 3 may include gaze detector components 31, 32. These may include retina detectors 31 which may be mounted adjacent or on the lenses of the spectacles, and a gaze angle estimator 32 for determining a gaze angle or direction based on the signals output by the retina detectors 31 ⁇
- the device 3 may include one or more gesture detection components 33, 34, 35, 36 configured to detect gestures performed by the user and to determine a direction associated with these gestures.
- the gesture detection components may in some examples include an infra-red camera 33 and a gesture recognition module 34 which are configured to determine a direction of a manual gesture (e.g. a user pointing in a particular direction).
- the device 3 may include a gyroscope 35 and/or an accelerometer 36 outputs of which may enable the controller to detect physical movements of the device and to determine from those outputs a gesture direction, for instance a direction in which a user is nodding their head.
- the device 3 may further include a compass 38 for allowing the absolute orientation of the device to be determined based on which the direction of user interest can be identified according to some examples.
- the orientation of the device 3 may be determined using an output of the gyroscope 35 which detects relative rotational movement of the device.
- the device 3 may further include a positioning module 39(e.g. a GNSS module) using which the location of the device may be determined.
- the positioning module may have a dedicated antenna 39-1.
- the positioning module 39 may, of course, be omitted.
- Figure 2 also shows an example location of the infrared camera 33 which is located above the bridge of the user's nose in between the two lenses.
- the other electronic components including the controller 30 and the transceiver 37 may for instance be located in an arm of the spectacles.
- FIG. 4 shows an example of a portable communications device 4 which may form at least part of the user communication apparatus 3, 4.
- the portable communication device 4 includes a controller 40 and at least one transceiver 41 which is configured to transmit and receive data via at least one antenna 42.
- the controller 40 may cause/enable the transceiver to transmit and/or receive data to/from the wearable device 3. For instance, in examples in which the wearable device 3 determines whether the relationship between the direction of user interest and the direction from the user apparatus 3 to the remote apparatus 2 satisfies the at least one predetermined condition, the portable communications device 4 may receive an instruction from the wearable device 3 for causing the portable
- the transceiver 41 may allow receipt of signals from the wearable device 3 that are indicative of, for instance, an output of the gaze detection components, the gesture detection components and/ or the compass. Based on these received signals, location information received from the server apparatus 5 and, in some instances, determined using the positioning module 43, the controller 40 may be able to determine the direction of interest and the direction from the user communication apparatus 3 to the remote apparatus 2.
- the controller 40 of the portable communication device 4 may be configured to control the transceiver 41 to cause performance of, or to allow, the interaction between the portable communication device 4 and the remote apparatus 2.
- the portable communication device 4 may, in some examples, include at least one of the compass 44 and the gyroscope 45 for enabling the orientation of the device 4 to be determined.
- the device 3 may further include a positioning module 43, which may have a dedicated antenna 43-1.
- the controller 41 may be configured to cause the transceiver 41 and the antenna 42 to transmit and/or receive signals (e.g. positioning packets) to/from the positioning device 6 of the positioning system.
- signals e.g. positioning packets
- FIG 5 is a schematic illustration of the server and transceiver apparatuses 5, 6 shown in Figures lA to lD.
- the server apparatus 5 is configured to cause location information indicative of the locations of one or more of the at least one remote apparatus 2 and, in some instances, also the user apparatus 3, 4 to be transmitted to the user apparatus 3, 4.
- the server apparatus 5 may keep a record of location information for each of the remote apparatuses 2.
- the record may include locations of static remote apparatuses and/or may include locations of mobile remote apparatuses 2 which may be updated on a regular basis based on transmissions received from the mobile remote apparatuses 2. Where the record stored by the server apparatus 5 is dynamically updated, the server apparatus 5 may be operable to cause the updated location information to be transmitted to the user apparatus 3, 4.
- Transmissions may be sent and received by the transceiver apparatus 6, which, although not shown in the Figures, may include a controller for controlling the other components of the apparatus 6 and for enabling data to be passed to and received from the server apparatus 5 and the user and remote apparatuses 2, 3, 4.
- the server apparatus 5 may be a positioning server of a positioning system which is configured to enable determination of locations of wireless apparatuses within an environment space based on signals, such as positioning packets, exchanged between the user apparatus 3, 4 and the transceiver apparatus 6.
- the transceiver apparatus may be referred to as a positioning device.
- the transceiver apparatus 6 may include multiple antennas 60 in the form of a phased array and a switch 61 for switching between the antennas of the array.
- the transceiver apparatus 6 or positioning server 5 is operable to determine a direction of arrival of a positioning packet having a particular format which is transmitted from the user apparatus 3, 4.
- the positioning server 5 or positioning device 6 is able to determine a location of the user apparatus 3, 4.
- the positioning device 5 may be alternatively or additionally configured to transmit a positioning packet of a particular format to the user apparatus 3, 4 using the phased antenna array. Based on receipt of this packet, the user apparatus 3, 4 may be able to determine the angle of departure of the packet from the positioning device 6. Based on this, and other constraint information which may also be received from the positioning device, the user communication device is able to determine its location.
- the positioning system may, and in many implementations does, include multiple positioning devices 6 distributed throughout a space (which may be indoors, such as a shopping centre or a hospital). An increased number of positioning devices 6 may improve the accuracy with which the positioning system 5, 6 is able to determine the locations of the third-party apparatuses.
- FIG 6 is a schematic illustration of an example of one of the remote apparatuses 2 shown in Figures lA to lD.
- the remote apparatuses 2 may be of any suitable type or combination of types and may comprise a user communication apparatus (e.g. a portable communication device) associated with another user.
- a user communication apparatus e.g. a portable communication device
- the remote apparatus 2 comprises a controller 20 configured to control a
- transmitter/receiver 22 (which may, in some examples, be in the form of a transceiver) and an antenna 23 to interact with the user apparatus 3, 4.
- the transmitter/receiver 22 which may, in some examples, be in the form of a transceiver
- antenna 23 to interact with the user apparatus 3, 4.
- transmitter/receiver may be configured to receive an active scan request packet from the user communication apparatus 3, 4 and to respond by transmitting an active scan response packet.
- the controller 20 may further control the transmitter/receiver 22 to transmit advertising packets for advertising the presence of the remote apparatus 2 and providing preliminary information, for instance including the device address of the remote apparatus and service information.
- the transmitter/receiver 22 of the remote apparatus 2 may be operable to maintain a connection with the user communication apparatus 3, 4.
- the any connection may be carried out by a separate, wirelessly connectable device 24 which may also be part of the remote apparatus 2.
- the transceivers 37, 41, 6, 22 described above with reference to figures 3 to 6 may each be configured, under the control of respective controllers, to communicate with the other apparatuses in the system in the manner described above via a Bluetooth transmission protocol.
- the transceivers 37, 41, 6, 22 may be configured to transmit and/or receive data using a Bluetooth Low Energy protocol (as described in or compatible with current version 4.2 of the Core Bluetooth specification).
- at least some of the apparatuses 37, 41, 6, 22 may also or additionally be configured to communication using another suitable protocol.
- Such protocols may include but are not limited to 802.11 wireless local area network protocols, other types of Bluetooth protocol or IEEE 802.15.4 protocols.
- Figures 7A and 7B are flow charts illustrating various operations which may be performed by one or more of the apparatuses described with reference to Figures lA to 6.
- operations which may be performed by the user communication apparatus 3, 4 are shown with a solid outline and those operations which alternatively may be performed by the positioning system 5, 6 include an additional dashed outline. If, in specific examples, an operation is performed by the positioning system 5, 6, performance of that operation may be omitted by the user communication apparatus 3, 4.
- the location of the user apparatus 3, 4 is determined. As discussed previously, this may include the user apparatus 3, 4 using a positioning module (e.g. 43 or 39) to determine its location. Alternatively, the location may be determined based on signals passed between the user communication apparatus 3, 4 and a positioning device 6 of a positioning system. In such examples, the location may be determined by a positioning server 5 with location information indicative of the determined location transmitted back to the user communication apparatus 3, 4. In other examples, the user communication apparatus 3, 4 may be configured to determine its own location based on received signals (e.g. AoD positioning packets in an HAIP system).
- received signals e.g. AoD positioning packets in an HAIP system
- the user communications apparatus 3, 4 may be said to determine its location based on the location information received from the positioning server 5. As will be appreciated from the below discussion with regard to operation S7.3, in other examples, the user
- the communication apparatus 3, 4 may neither compute their own location (e.g. using GNSS) nor receive the location information indicative of their location from the positioning system 5, 6.
- the location of one of more remote apparatuses 2 is determined. This may be performed by the user apparatus 3, 4 based on location information indicating locations of one or more remote apparatuses within the particular system which may be received from the server apparatus 5.
- the locations of the remote apparatuses 2 may be determined by the positioning system 5, 6 (or server apparatus 5 which is not part of a positioning system) based on signals passed between the positioning system 5, 6 (or server apparatus) and the remote apparatuses 2. For instance, remote apparatuses 2 may determine their location using GNSS and may transmit signals including location information to the server apparatus 5.
- the positioning system 5, 6 may determine the locations of the remote apparatuses 2 based on signals such as positioning packets passed between the remote apparatuses 2 and positioning devices 6 of the positioning system 5, 6. Where one or more of the remote apparatuses 2 is a mobile device, signals may be passed regularly between the remote apparatuses 2 and the positioning system.
- locations of static remote apparatuses 2 may be pre-stored in the positioning system 5, 6 and so an active computation of the location may not be required. Similarly as described with reference to operation S7.1, in some examples, the location information indicative of the locations of the remote apparatuses 2 may not be provided to the user communication apparatus 3, 4.
- At least one first direction is determined based on the locations determined in operations S7.1 and S7.2.
- the first direction may be a direction between the location of the user apparatus 3, 4 and the location of one of the at least one remote apparatuses 2.
- the direction may be determined either from the user apparatus to the remote apparatus or vice versa. In systems in which more than one remote apparatuses 2 is present, the direction from the user apparatus 3, 4 to each of the remote apparatuses may be determined 2.
- the first directions may in some examples be computed by the user communication apparatus 3, 4 based on its own location, which it may have computed itself or may have received from the positioning system 5, 6, and the received location information indicative of locations of the remote apparatuses 2. In other examples, the first directions may be computed or calculated by the positioning system 5, 6, with direction information indicative of the first directions being transmitted to, and received by, the user
- the direction of user interest (i.e. the second direction) is determined.
- the direction of the user interest may be determined in a number of different ways. For instance, the direction of user interest may be determined based on an orientation of the user communication apparatus 3, 4, for instance a direction in which a particular face or edge of the apparatus 3, 4 is facing.
- the direction of user interest may be taken as the normal outer faces of the spectacle lenses.
- the direction of user interest may be, for instance, a normal to a top edge or surface of a portable
- communications device 4 such as a mobile phone or tablet computer.
- the direction of user interest in such examples corresponds directly with an orientation of the user's device.
- the orientation of the user device 3 or 4 may be determined based on an absolute orientation measured using, for instance, the compass 38 or 44. Alternatively, the orientation of the device 3 or 4 may be determined based on a combination of a current heading He and detected change in orientation ⁇ . The change in orientation ⁇ may be detected using the gyroscope 35 or 45. If no signal is output by e.g. the gyroscope 35 or 45, the change in orientation is assumed to be zero. In such an instance, the combination of the heading He and change in orientation equates to the heading He.
- the current heading He may be determined by the user apparatus 3, 4 based on the two most recently determined locations or may be determined by and received from the positioning system 5, 6. In other examples, the direction of user interest may be determined by detecting a gaze direction or a gesture direction as discussed previously.
- operation S7.5 it is determined if the relationship between the direction of user interest and a direction from the user apparatus 3, 4 to a remote apparatus 2 satisfies at least one predetermined condition.
- this operation may include comparing the direction of user interest with a direction from the user apparatus 3, 4 to each of the remote apparatuses 2. It may additionally include, for each remote apparatus 2, determining the magnitude of its angular separation from the direction of user interest and placing the magnitudes of angular separation in an ordered set or list.
- the least one predetermined condition may include a requirement that a magnitude of the angular separation between the first and second directions is less than a predetermined value.
- the allowable range of angles may be o to 10 degrees.
- a different predetermined value may be used.
- the predetermined value may be dynamically selected, for instance where an area is particularly congested with remote apparatuses 2, a lower predetermined value, e.g. less than 5 degrees, may be selected. If, on the other hand, an area is not congested with remote apparatuses 2, a larger predetermined value may be used.
- the density of remote apparatuses 2 within an area may be determined based on information received from the server apparatus 5.
- the at least one condition may additionally or alternatively require that a ranking of the magnitude of the angular separation between the first and second directions may be required to be higher than or equal to a threshold ranking in an ordered set of magnitudes of angular separations between the direction of user interest and directions from the user apparatus 3, 4 to each of plural remote apparatuses 2.
- the method may return to operation S7.1 in which the location of user apparatus 3, 4 is again determined.
- operation S7.2 may be omitted.
- operation S7.3 may next be performed. This may be particularly applicable in examples in which the remote apparatuses within a particular environment are static and information indicating the locations has previously been received at the user apparatus.
- operation S7.6 may be performed.
- operation S7.6 it is determined if at least one further criterion or condition with respect to the remote apparatus 2 is satisfied. This may include a number of different operations which are discussed below with reference to Figure 7B. If it is determined that the requisite at least one further criterion is satisfied, the user communication apparatus 3, 4 proceeds to operation S7.7. In operation S7.7, the user communication apparatus 3, 4 causes or allows performance of an interaction between the remote apparatus 2 and the user communication apparatus 3, 4. This operation may be performed on the basis of an identifier, such as a device address, of the remote apparatus 2.
- an identifier such as a device address
- the device address may have been received directly from the remote apparatus 2 via an advertising packet or from the server apparatus 5.
- the interaction between the remote apparatus 2 and the user communication apparatus 3, 4 is an active scan by the user communication apparatus 3, 4 for the remote apparatus 2.
- Causing performance of the active scan may include, in operation S7.7-1, causing addition of the remote apparatus 2 to a stored white-list.
- the white-list may be a list of remote apparatuses 2 for which active scanning is permitted.
- the user communication apparatus 3, 4 may be configured such that, if a remote apparatus 2 is not on the white-list, active scans for that remote apparatus 2 are not performed.
- the white-list may include the identifiers of various remote apparatuses 2 and may be stored in memory of the user communication apparatus 3, 4.
- Causing performance of the active scan may further or alternatively include causing initiation of the active scan in operation S7.7-2.
- Causing initiation of the active scan may include using the identifier of the remote apparatus 2 to transmit one or more active scan request packets to the remote apparatus 2.
- the wireless communication apparatus 3 may be operable to allow a user to cause a wireless interaction to occur between their communication apparatus 3, 4 and the remote apparatus simply by orienting their device generally towards the remote apparatus 2 with which an interaction is desired. Consequently, if as in the examples of Figures 1 to 3, the user's apparatus includes electronic glasses or spectacles 3, the user or wearer may be able to cause an interaction to occur between one of their devices and the remote apparatus 2 simply by facing generally towards the remote apparatus 2 when wearing the spectacles. Similarly, in examples in which the direction of user interest is a gaze direction or a gesture direction, the user may simply look or gesture towards a remote apparatus 2 in order to cause an interaction to occur.
- Figure 7B is a flowchart illustrating various operations, combinations of which may make up the determination of operation S7.6 of Figure A. As will be appreciated the order in which the steps are performed may be different to that shown in Figure 7B and also various operations may be omitted.
- a distance between the user communication apparatus 3, 4 and the remote apparatus 2 is determined. This determination can be performed based on the locations of the user apparatus 3, 4 and the remote apparatus 2 as determined in operations S7.1 and S7.2 respectively. This may be calculated by the positioning system 5, 6 and distance information indicative of this may be provided to the user communication apparatus (e.g. along with the direction information). The user communication apparatus 3, 4 then determines the distance based on the received distance information.
- operation S7.6-2 it is determined whether the determined distance satisfies a predetermined criterion.
- the distance may satisfy the criterion if, for instance, it is below a threshold distance. If it is determined that the distance satisfies the criterion, the user communication apparatus 3, 4 may proceed to operation S7.6-3 (or one of operations S7.6-5 and S7.7). If, however, it is determined that the distance does not satisfy the criterion, operation S7.1 may once again be performed. In other examples, the distance information may not be provided to the user
- the distance may be determined by the positioning system 5, 6 which then determines if it satisfies the criterion (e.g. is below a threshold). If it is found to satisfy the criterion, the positioning system 5, 6 may respond by transmitting the direction information to the user communication apparatus. If, however, it is found not to satisfy the criterion, the positioning system 5, 6 may respond by not transmitting (or withholding) the direction information. Consequently, in such examples, the user communication apparatus 3, 4 will only receive direction information for remote apparatuses 2 for which the distance satisfies the criterion. Therefore, the user apparatus 3, 4 is able to determine implicitly that, if direction information relating to a remote apparatus 2 is received, the distance to that remote apparatus 2 satisfies the criterion.
- the criterion e.g. is below a threshold
- applying a threshold distance may allow an active scan for remote apparatuses 2 to be performed only for remote apparatuses 2 which are nearby. This may reduce occurrences of unintentional interactions (e.g. active scans) for remote apparatuses 2 that are far away, but just happen to be in the determined direction of user-interest.
- the user communication apparatus 3, 4 determines a type of the remote apparatus 2. This may be determined for instance based on information included with the location information from the sever apparatus 5 or received directly from the remote apparatus (e.g. in an advertising packet).
- the server apparatus 5 may retransmit advertising packets received from remote apparatuses 2 using one or more nearby transceiver apparatuses 6. This would allow the advertising packets to reach (nearby) places to which there is no radio path from the remote apparatus 2.
- the server apparatus 5 may also act as a proxy for any other traffic or interactions between user apparatus 3, 4 and remote apparatus 2.
- operation S7.6-4 it is determined if the remote apparatus 2 is of a suitable or allowed type.
- a list of allowed or suitable types may be stored by the user apparatus 3, 4.
- the determined type may indicate whether or not the remote apparatus is configured to provide responses to an active scan and/or is able to participate in a connection with another apparatus.
- the apparatus 3, 4 may proceed to operation S7.6-5. If, however, it is determined that the type of the remote apparatus 1 is not suitable, operation S7.1 may once again be performed.
- Other information upon which the determination of S7.6-4 may be made may include information indicating services available from the remote apparatus (e.g. if a particular service is available, the apparatus may be determined to be suitable) and whether or not the remote apparatus is known by the user apparatus (e.g. if the remote apparatus is not known, it may be determined that the remote apparatus is not suitable).
- Performance of operations S7.6-3 and S7.6-4 may prevent computing resources being wasted by preventing active scans being performed in respect of remote apparatuses which are not of a suitable type (e.g. which are not suitable to respond to an active scan or which are not capable of establishing a connection).
- a user indication is received.
- the user indication may be of any number of different types received via any suitable interface. For instance, a manual gesture or a physical movement of the apparatus may be detected by the gesture detection components. Alternatively or additionally, the gaze direction and or a blink of the user's eyes may be detected via the gaze detection components. In some specific examples, the user indication may be provided by the user moving the user
- the communication apparatus 3, 4 in a predetermined manner (e.g. by nodding their head). This may be detected by the gyro device 35 or accelerometer 36.
- the user indication may be received via an input interface such as a touch sensitive panel and/or a physical key (not shown in the Figures).
- the user indication may be received via a voice control interface.
- the user indication may be provided by gazing or gesturing towards the remote apparatus 2 in addition to orientating their device (which in such examples indicates the direction of user interest) generally towards the remote apparatus 2. It will therefore be appreciated that, in some instances, in order for the interaction to occur, it may be required that the user physically orientates one of their devices such that it is directed to the remote apparatus 2 and that the user gestures or looks/gazes towards remote apparatus 2.
- the user gazes and gestures towards the remote apparatus 2 it may be required that the user gazes and gestures towards the remote apparatus 2, but it may not be necessary for a user device to be orientated in a particular way with respect to the remote apparatus 2.
- the received user indication indicates that an interaction with the remote apparatus 2 is desired.
- This may be indicated in any suitable way.
- the user may select a selectable option which is caused to be presented to the user by their apparatus 3, 4 in response to a positive determination being reached in operation S7.5.
- the selectable option may allow the user to indicate whether or not they would like an active scan for the remote apparatus 2 to be performed.
- the user may indicate that they wish for the active scan to occur by performing a recognised movement of their apparatus 3, 4 (e.g. nodding their head while wearing the glasses 3) which is detectable using the gyro device 350.
- determining whether the received user indication indicates that an active scan for the remote apparatus 2 is required may include determining if at least one of a gesture direction or a gaze direction adopts a predetermined relationship with the direction between the user apparatus 3, 4 and the remote apparatus 2.
- the predetermined relationship may be similar to one of the predetermined conditions described with reference to operation S7.5 (e.g. that the magnitude of an angular separation between the first direction and the gaze or gesture direction is less than a predetermined value), although in some examples allowable ranges of angular separation may be different for operations S7.5 and S7.6-6.
- operation S7.6-6 If it is determined in operation S7.6-6 that an active scan for the remote apparatus 2 is required, the user communication apparatus 3, 4 may proceed to operation S7.7. If, however, it is determined that an active scan is not required, operation S7.1 may once again be performed.
- FIG. 7B Various operations described with reference to Figure 7B reduce the likelihood that performance of a wireless interaction between two apparatuses is unintentionally caused.
- the user's apparatus 3, 4 may be configured to perform all of the operations of Figure 7B (in the order shown in the Figure or in a different order) or may be configured only to perform any appropriate subset of the operations shown (for example, but not limited to, only operations S7.6-5 and S7.6-6).
- the functionality described above in reference to the user communication apparatus 3 , 4 may be provided by single user device e.g. one of the wearable device 3 and the portable communications device 4 which may be configured to perform at least operations S7.4, S7.5 and S7.7 as described with reference to Figure 7A.
- the wearable device 3 may be an auxiliary device which maintains an ongoing connection with the portable communications device 4 with the two devices performing different ones of the above-described operations.
- the portable communication device 4 may perform at least operations S7.5 and S7.7 described with reference to Figure 7A, and the wearable device 3 may perform (or at least enable) the determination of the direction of user interest.
- the location of the user apparatus 3, 4 which is used to determine the first direction may be the location of the wearable device 3 or the portable communication device 4, depending on the way in which the location is determined. In examples in which the user's apparatus 3, 4 includes a wearable device 3, this may be of a different type to that illustrated in the figures.
- the wearable device 3 may be a smart watch.
- Figure 8 is an example of operations, which have all been discussed previously with respect to Figures 7A and 7B, which may be performed by the positioning system 5, 6.
- both the user apparatus 3, 4 and the remote apparatuses 2 may be referred to as third-party apparatuses as they are not part of the positioning system.
- the location of at least one remote apparatus 2 (the second third-party apparatus) is determined. Determination of the location of the remote apparatus 2 may be performed as described with reference to operation S7.2. For instance, in some examples, it may be determined based on positioning packets transmitted by the remote apparatuses and received at a positioning device 6 of the positioning system 5, 6. In such examples, the positioning system 5, 6 may determine an angle-of-arrival of the packet and use this, along with other constraint information, to determine the location of the remote apparatus 2.
- the location of the user communication apparatus 3, 4 (which may be referred to as the first third-party apparatus) is determined. This may be determined as described with reference to S7.1. For instance, it may be determined similarly to the location of the at least one remote apparatus as discussed with reference to operations S8.1.
- At least one first direction i.e. the direction from the user
- operation S8.5 it is determined if the distance satisfies the predetermined criterion. This may be performed as described with reference to the operations S7.6-2. If it is determined that the distance satisfies the criterion, the positioning system 5, 6 may proceed to operation S8.6 in which direction information relating to each remote apparatus 2 for which the distance satisfies the criterion is transmitted to the user communication apparatus 3, 4. After transmitting the direction information, the positioning system may return to one of operations S8.1 and S8.2, which as will be appreciated may be performed in any order. If it is determined that the distance does not satisfy the criterion, the positioning system 5, 6 may return to one of operations S8.1 and S8.2.
- server apparatus 5 may only perform operation S8.1 and may subsequently transmit location information relating to the remote apparatuses 2 to the user apparatus 3, 4.
- the distance may be determined and compared with the criterion prior to determining the first direction, with the direction only being determined for those remote apparatuses 2 for which the distance satisfies the criterion.
- the distance may be determined in operation S8. 4 but operation S8.5 may not be performed. Instead, distance information may be transmitted to the user apparatus 3, 4 along with the direction information in operation S8.6.
- towards may include range of angles around an exact alignment, suitable for indicating that that the user is interested in a particular remote apparatus 2.
- the controllers 20, 30, 40, 50 of each of the apparatuses or devices 2, 3, 4, 5 comprise processing circuitry 201, 301, 401, 501 communicatively coupled with memory 202, 302, 402, 502.
- the memory 202, 302, 402, 502 has computer readable instructions 202A, 302A, 402A, 502A stored thereon, which when executed by the processing circuitry 201, 301, 401, 501 causes the processing circuitry 201, 301, 401, 501 to cause performance of various ones of the operations described with reference to Figures 1 to 7B.
- the processing circuitry 201, 301, 401, 501 of any of the apparatuses 2, 3, 4, 5 described with reference to Figures 1 to 7 may be of any suitable composition and may include one or more processors 201A, 301A, 401A, 501A of any suitable type or suitable combination of types.
- the processing circuitry 201, 301, 401, 501 may be a programmable processor that interprets computer program instructions 202A, 302A, 402A, 502A and processes data.
- the processing circuitry 201, 301, 401, 501 may include plural
- processing circuitry 201, 301, 401, 501 may be, for example, programmable hardware with embedded firmware.
- the processing circuitry 201, 301, 401, 501 may be termed processing means.
- the processing circuitry 201, 301, 401, 501 may alternatively or additionally include one or more Application
- processing circuitry 201, 301, 401, 501 may be referred to as computing apparatus.
- the processing circuitry 201, 301, 401, 501 is coupled to the respective memory (or one or more storage devices) 202, 302, 402, 502 and is operable to read/write data to/from the memory 202, 302, 402, 502.
- the memory 202, 302, 402, 502 may comprise a single memory unit or a plurality of memory units, upon which the computer readable instructions (or code) 202A, 302A, 402A, 502A is stored.
- the memory 202, 302, 402, 502 may comprise both volatile memory and non-volatile memory.
- the computer readable instructions 202A, 302A, 402A, 502A may be stored in the non-volatile memory and may be executed by the processing circuitry 201, 301, 401, 501 using the volatile memory for temporary storage of data or data and instructions.
- volatile memory examples include RAM, DRAM, and SDRAM etc.
- nonvolatile memory examples include ROM, PROM, EEPROM, flash memory, optical storage, magnetic storage, etc.
- the memories in general may be referred to as non-transitory computer readable memory media.
- the term 'memory' in addition to covering memory comprising both non-volatile memory and volatile memory, may also cover one or more volatile memories only, one or more non-volatile memories only, or one or more volatile memories and one or more nonvolatile memories.
- the computer readable instructions 202A, 302A, 402A, 502A may be pre-programmed into the apparatuses 2, 3, 4, 5. Alternatively, the computer readable instructions 202A, 302A, 402A, 502A may arrive at the apparatus 2, 3, 4, 5 via an electromagnetic carrier signal or may be copied from a physical entity 210 (see Figure 5) such as a computer program product, a memory device or a record medium such as a CD-ROM or DVD.
- the computer readable instructions 202A, 302A, 402A, 502A may provide the logic and routines that enables the devices/apparatuses 2, 3, 4, 5 to perform the functionality described above.
- the combination of computer-readable instructions stored on memory may be referred to as a computer program product.
- the BLE-capability of the apparatuses 2, 3, 4, 5 may be provided by a single integrated circuit. It may alternatively be provided by a set of integrated circuits (i.e. a chipset).
- the BLE-capability may alternatively be a hardwired, application-specific integrated circuit (ASIC).
- the apparatuses 2, 3, 4, 5 described herein may include various hardware components which have may not been shown in the Figures.
- the portable communications device 4 may in some implementations be a mobile telephone or a tablet computer and so may contain components commonly included in a device of the specific type.
- the apparatuses 2, 3, 4, 5 may comprise further optional software components which are not described in this specification since they may not have direct interaction to embodiments of the invention.
- Embodiments of the present invention may be implemented in software, hardware, application logic or a combination of software, hardware and application logic.
- the software, application logic and/or hardware may reside on memory, or any computer media.
- the application logic, software or an instruction set is maintained on any one of various conventional computer-readable media.
- a "memory" or “computer-readable medium” may be any media or means that can contain, store, communicate, propagate or transport the instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer.
- references to, where relevant, "computer-readable storage medium”, “computer program product”, “tangibly embodied computer program” etc, or a “processor” or “processing circuitry” etc. should be understood to encompass not only computers having differing architectures such as single/multi processor architectures and sequencers/parallel architectures, but also specialised circuits such as field programmable gate arrays FPGA, application specify circuits ASIC, signal processing devices and other devices.
- References to computer program, instructions, code etc. should be understood to express software for a programmable processor firmware such as the programmable content of a hardware device as instructions for a processor or configured or configuration settings for a fixed function device, gate array, programmable logic device, etc.
- circuitry refers to all of the following: (a)hardware- only circuit implementations (such as implementations in only analogue and/or digital circuitry) and (b) to combinations of circuits and software (and/or firmware), such as (as applicable): (i) to a combination of processor(s) or (ii) to portions of processor(s)/software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as a mobile phone or server, to perform various functions) and (c) to circuits, such as a microprocessor(s) or a portion of a microprocessor(s), that require software or firmware for operation, even if the software or firmware is not physically present.
- circuitry would also cover an implementation of merely a processor (or multiple processors) or portion of a processor and its (or their) accompanying software and/or firmware.
- circuitry would also cover, for example and if applicable to the particular claim element, a baseband integrated circuit or applications processor integrated circuit for a mobile phone or a similar integrated circuit in server, a cellular network device, or other network device.
- the different functions discussed herein may be performed in a different order and/or concurrently with each other. Furthermore, if desired, one or more of the above- described functions may be optional or may be combined.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Telephone Function (AREA)
Abstract
This specification describes a method comprising causing or enabling an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus, and the second direction being a direction of user-interest relative to the user apparatus.
Description
METHODS, APPARATUSES AND COMPUTER READABLE MEDIA FOR CAUSING OR ENABLING PERFORMANCE OF A WIRELESS INTERACTION
Field
This specification relates to causing or enabling performance of a wireless interaction.
Background
Users of portable devices are surrounded by an increasing number of wireless devices with which it is possible to interact in order to obtain additional information or to form a connection. This brings new challenges in relation to enabling devices to wirelessly interact in an efficient manner, particularly in a system in which many different users and remote apparatuses are present.
Summary
In a first aspect, this specification describes a method comprising causing or enabling an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus and the second direction being a direction of user-interest relative to the user apparatus.
The method may further comprise one of: determining the first direction based on the location of the user apparatus and the location of the remote apparatus; and receiving information indicative of the first direction. The method of may further comprise receiving information indicative of the location of the remote apparatus, and determining the first direction based on the location of the user apparatus and the location of the remote apparatus. The location of the remote apparatus may have been determined based on at least one signal passed between the remote apparatus and a positioning device of a positioning system. The location of the user apparatus may have been determined based on at least one signal passed between the user apparatus and a positioning device of a or the positioning system. The method may further comprise receiving from the positioning system at least one of: information indicative of the determined location of the user apparatus; and the information indicative of the first direction. In some alternatives, the method may comprise determine the location of the user apparatus using a global navigation satellite system.
The method may comprise determining the second direction. The second direction may correspond to an orientation of the user apparatus with respect to the remote apparatus. The orientation of the user apparatus may be determined based on one of: a detected absolute orientation of the user apparatus; and a combination of a heading of the user apparatus and a detected change in orientation of the user apparatus. Alternatively, the second direction may be a direction of gaze of a user of the user apparatus or a direction of a gesture performed by a user of the user apparatus. The relationship between the first direction and the second direction may satisfy the at least one predetermined condition if a magnitude of an angular separation between the first and second directions is less than a predetermined value. Alternatively or
additionally, the relationship between the first direction and the second direction may satisfy the at least one predetermined condition if a ranking of a magnitude of an angular separation between the first and second directions is higher than or equal to a pre-defined ranking in an ordered set of magnitudes of angular separations between the second direction and directions between the user apparatus and plural remote apparatuses.
The method may further comprise causing or enabling the interaction only if at least one further predetermined condition with respect to the remote apparatus is satisfied. The method may further comprise determining whether a user indication that an interaction with the remote apparatus is desired has been received, and causing or enabling the interaction only if the user indication has been received. The method may comprise causing or enabling the interaction, only if a distance between the user apparatus and the remote apparatus satisfies a pre-determined criterion. The distance may satisfy the predetermined criterion if the distance is less than a threshold distance. The method may comprise determining a type of the remote apparatus, and causing or enabling an interaction, only if the remote apparatus is determined to be of a pre-defined type. The interaction may comprise performance of an active scan for the remote apparatus by the user apparatus. The active scan may be performed using an identifier of the remote apparatus that is received from a server apparatus or the remote apparatus.
In a second aspect, this specification describes a method comprising determining a location of a first third-party apparatus based on a radio frequency signal received from the first third-party apparatus, determining a direction between the first third-party apparatus and a second third-party apparatus based on the location of the first third-party
apparatus and a location of the second third-party apparatus, and causing transmission to the first third-party apparatus of information indicative of the determined direction. The method may further comprise determining the location of the second third-party apparatus based on a radio frequency signal received from the second third-party apparatus. The method may further comprise determining a distance between the first and second third-party apparatuses, and one of: causing transmission of information indicative of the determined distance; and determining whether the distance satisfies a pre-determined criterion and causing transmission of the information indicative of the determined direction only if the distance does satisfy the pre-determined criterion.
In a third aspect this specification describes apparatus configured to perform a method as described with respect to either of the first and second aspects.
In a fourth aspect, this specification describes apparatus comprising at least one processor and at least one memory including computer program code, which when executed by the at least one processor, causes the apparatus to cause or enable an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus and the second direction being a direction of user-interest relative to the user apparatus.
The computer program code, when executed by the at least one processor, may cause the apparatus either to determine the first direction based on the location of the user apparatus and the location of the remote apparatus, or to receive information indicative of the first direction. The computer program code, when executed by the at least one processor, may cause the apparatus to receive information indicative of the location of the remote apparatus, and to determine the first direction based on the location of the user apparatus and the location of the remote apparatus.
The location of the remote apparatus may have been determined based on at least one signal passed between the remote apparatus and a positioning device of a positioning system.
The location of the user apparatus may have been determined based on at least one signal passed between the user apparatus and a positioning device of a or the positioning system.
The computer program code, when executed by the at least one processor, may cause the apparatus to receive from the positioning system at least one of information indicative of the determined location of the user apparatus, and the information indicative of the first direction.
The computer program code, when executed by the at least one processor, may cause the apparatus to determine the location of the user apparatus using a global navigation satellite system. The computer program code, when executed by the at least one processor, may cause the apparatus to determine the second direction. The second direction may correspond to an orientation of the user apparatus with respect to the remote apparatus. The orientation of the user apparatus may be determined based on one of a detected absolute orientation of the user apparatus, and a combination of a heading of the user apparatus and a detected change in orientation of the user apparatus. In some alternatives the second direction may be a direction of gaze of a user of the user apparatus or a direction of a gesture performed by a user of the user apparatus.
The relationship between the first direction and the second direction may satisfy the at least one predetermined condition if a magnitude of an angular separation between the first and second directions is less than a predetermined value. Alternatively or
additionally, the relationship between the first direction and the second direction may satisfy the at least one predetermined condition if a ranking of a magnitude of an angular separation between the first and second directions is higher than or equal to a pre-defined ranking in an ordered set of magnitudes of angular separations between the second direction and directions between the user apparatus and plural remote apparatuses.
The computer program code, when executed by the at least one processor, may cause the apparatus to cause or enable the interaction only if at least one further predetermined condition with respect to the remote apparatus is satisfied. The computer program code, when executed by the at least one processor, may further cause the apparatus to determine whether a user indication that an interaction with the remote apparatus is desired has been received, and to cause or enable the interaction only if the user indication has been received. Alternatively or additionally, the computer program code, when executed by the at least one processor, may cause the apparatus to cause or enable the interaction, only if a distance between the user apparatus and the remote apparatus satisfies a pre-determined criterion. The distance may satisfy the pre-determined criterion if the distance is less than
a threshold distance. Alternatively or additionally, the computer program code, when executed by the at least one processor, may cause the apparatus to determine a type of the remote apparatus, and to cause or enable an interaction, only if the remote apparatus is determined to be of a pre-defined type.
The interaction may comprise performance of an active scan for the remote apparatus by the user apparatus. The active scan may be performed using an identifier of the remote apparatus that is received from a server apparatus or the remote apparatus. In a fifth aspect, this specification describes apparatus comprising at least one processor, and at least one memory including computer program code, which when executed by the at least one processor, cause the apparatus to determine a location of a first third-party apparatus based on a radio frequency signal received from the first third-party apparatus, to determine a direction between the first third-party apparatus and a second third-party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus, and to cause transmission to the first third-party apparatus of information indicative of the determined direction. The computer program code, when executed by the at least one processor, may cause the apparatus to determine the location of the second third-party apparatus based on a radio frequency signal received from the second third-party apparatus. The computer program code, when executed by the at least one processor, may cause the apparatus to determine a distance between the first and second third-party apparatuses; and one of: to cause transmission of information indicative of the determined distance; and to determine whether the distance satisfies a pre-determined criterion and causing transmission of the information indicative of the determined direction only if the distance does satisfy the pre-determined criterion.
In a sixth aspect, this specification describes computer-readable code which, when executed by computing apparatus, causes the computing apparatus to perform a method as described with reference to either of the first and second aspects.
In a seventh aspect, this specification describes a computer-readable medium having computer-readable code stored thereon, the computer readable code, when executed by a least one processor, cause performance of at least causing or enabling an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of
the user apparatus and a location of the remote apparatus and the second direction being a direction of user-interest relative to the user apparatus. The computer-readable code stored on the medium of the seventh aspect may further cause performance of any of the operations described with reference to the first aspect.
In an eighth aspect, this specification describes a computer-readable medium having computer-readable code stored thereon, the computer readable code, when executed by a least one processor, cause performance of at least determining a location of a first third- party apparatus based on a radio frequency signal received from the first third-party apparatus, determining a direction between the first third-party apparatus and a second third-party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus, and causing transmission to the first third- party apparatus of information indicative of the determined direction. The computer- readable code stored on the medium of the eighth aspect may further cause performance of any of the operations described with reference to the second aspect.
In a ninth aspect, this specification describes apparatus comprising means for causing or enabling an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus and the second direction being a direction of user-interest relative to the user apparatus. The apparatus of the ninth aspect may further comprise means for causing performance of any of the operations described with reference to the first aspect.
In a tenth aspect, this specification describes apparatus comprising means for determining a location of a first third-party apparatus based on a radio frequency signal received from the first third-party apparatus, means for determining a direction between the first third- party apparatus and a second third-party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus, and means for causing transmission to the first third-party apparatus of information indicative of the determined direction. The apparatus of the tenth aspect may further comprise means for causing performance of any of the operations described with reference to the second aspect.
Brief Description of the Figures
For a more complete understanding of the methods, apparatuses and computer-readable instructions described herein, reference is now made to the following descriptions taken in connection with the accompanying drawings in which:
Figures lA to iD are simplified schematic illustrations of a communication system l which enables a user selectively to cause wireless interaction between devices;
Figure 2 is a simplified schematic illustration of an example of one of the user devices shown in Figures lA to iD;
Figure 3 is a block diagram schematically illustrating an example of a configuration of the device shown in Figure 2;
Figure 4 is a schematic illustration of another of the user devices of the shown in Figures lA to iD;
Figure 5 is a schematic illustration of the server and transceiver apparatuses shown in Figures lA to iD;
Figure 6 is a schematic illustration of an example of one of the remote apparatuses shown in Figures lA to iD;
Figures 7A and 7B are flowcharts illustrating various operations which may be performed by one or more of the apparatuses described with reference to Figures lA to 6; and Figure 8 is a flow chart illustrating various operations which may, in some examples, be performed by apparatuses which form part of a positioning system.
Detailed Description
In the description and drawings, like reference numerals may refer to like elements throughout. Figures lA to iD are simplified schematic illustrations of a communications system which enables a user selectively to cause performance of an interaction between their user apparatus or device 3, 4 and a remote apparatus 2, for instance in order to obtain additional information from the remote apparatuses 2. The system 1 includes user communication apparatus 3, 4, which is configured to cause or enable performance of an interaction with a particular remote apparatus 2 in response to determining that a relationship between a direction from the user communication apparatus 3, 4 and the remote apparatus 2 ("the first direction") and a direction of user- interest relative to the user communication apparatus 3, 4 ("the second direction") satisfies at least one predetermined condition. This provides a simple and efficient process by which a user can cause a wireless interaction between their apparatus and a particular remote apparatus. In addition, the process can be carried out using third-party
apparatuses (both user apparatuses and remote apparatuses) which do not require specialised hardware components such as phased antenna arrays and the like.
Consequently, the process may be applicable to legacy devices, modern devices and future devices alike.
The relationship between the first direction and the second direction may be found to satisfy the at least one predetermined condition if a magnitude of an angular separation between the first and second directions is less than a predetermined value. In some examples, the predetermined value may be very small (e.g. ι to 2 degrees). As such, the directions may be found to satisfy the at least one predetermined condition if the first direction is determined to be exactly or substantially exactly aligned with the second direction. In other examples, the predetermined value may be larger, for instance 5, 10, 15, 20 or 25 degrees, in which case the directions may be said to be generally aligned. It may additionally or alternatively be required that, for the at least one predetermined condition to be satisfied, the magnitude of the angular separation between the first and second directions is one of iVlowest magnitudes of plural angular separations between the direction of user interest and directions to each of plural remote apparatuses 2, where N is a pre-defined integer. Put another way, a ranking of the magnitude of the angular separation between the first and second directions may be required to be higher than or equal to a threshold ranking in an ordered set of magnitudes of angular separations between the direction of user interest and directions from the user apparatus 3, 4 to each of plural remote apparatuses 2. As will be appreciated, when using such terminology, the smallest magnitude is ranked in first place in the ordered set and a ranking is higher the closer to first place it is.
As will be understood from the above, the interaction may be caused or enabled between the user apparatus 3, 4 and one or more remote apparatuses 2, the directions to which are the N closest (i.e. have the iVlowest angular separations) to the direction of user-interest. The integer N (which is also the threshold ranking) may be definable by the user or the user apparatus 3, 4 or may be pre-configured. For instance, N may be defined as "1", in which case interaction will only occur with the single remote apparatus 3, 4, the direction to which is closest to the direction of user interest. As will be appreciated, in some examples, the interaction may be caused only if the magnitude of the angular separation is both within an allowed range (i.e. is less than a predetermined value) and is one of the iVlowest magnitudes of angular separation for
plural remote apparatuses. By way of example, let us consider a scenario in which N is "3", the allowed range is 10 degrees and there are five remote devices having angular separations: 5 (for remote apparatus A), 10 (for remote apparatus B), 15 degrees (for remote apparatus C), 12 degrees (for remote apparatus D) and 13 degrees (for remote apparatus E). In this example, an interaction will only be caused with those remote apparatuses for which the angular separations are both one of the three lowest (i.e.
apparatuses A, B and D) and are ten degrees or less. Therefore, an interaction will occur only for apparatuses A and B. So, it can be seen that even though apparatus D has one of the lowest three angular separations, an interaction is not caused because its angular separation is outside the allowable range.
Now let us consider the same scenario except that the angular separations for remote apparatuses C and D are 8 and 9 degrees respectively. In this example, even though apparatus A, B, C and D have angular separations below the allowed value, interactions will only be caused with those apparatuses having the lowest three angular separations, which is apparatuses A (5 degrees), C (8 degrees) and D (9 degrees).
The direction from the user communication apparatus 3, 4 to the remote apparatus 2 is determined based on at least a location of the user apparatus 3, 4 and a location of the remote apparatus 2. This may be determined by server apparatus 5 or an associated transceiver apparatus 6 (both of which are discussed in more detail below). In such examples, information indicative of the determined first direction may be transmitted to and received by the user apparatus 3, 4. In other examples, the first direction may be determined by the user apparatus 3, 4.
In this example, the user communication apparatus 3, 4 comprises two separate devices, which are in this example a wearable device 3 and a portable communication device 4. For simplicity, both devices 3, 4 are only shown together in Figures lA and lD. However, although the portable communication device 4 is not shown in Figures iB and iC, it will be understood that it is still carried by the user, for instance in their pocket or bag.
In the example illustrated in Figures lA to lD, the location and orientation of the user communication apparatus 3, 4 refers to the location and orientation of the wearable device 3 and not the portable communication device 4. The location and the orientation of the portable communication device 4 may not, in some examples, be important as long as it stays sufficiently near to the wearable device 3 so as to maintain a connection with the wearable device 3.
As will be appreciated from the below discussion, in other examples, the user
communication apparatus 3, 4 may include just a single device (e.g. one of the wearable device 3 and the portable communication device 4). In such examples, the location and orientation of the user communication apparatus 3, 4 should, of course, be understood to relate to the single device.
The system also includes at least one remote apparatus 2-1 to 2-6 (when the remote apparatuses are being referred to collectively, or in general terms, the reference numeral 2 will be used). Each of the remote apparatuses 2 is configured to wirelessly transmit information to and/or receive information from the user communication apparatus 3, 4. One or more of the remote apparatuses 2 may be configured to periodically transmit or broadcast data packets (e.g. Bluetooth low energy advertising packets). The data packets may include a device address which identifies the remote apparatuses 2 which transmits it and service information relating to a service provided by the remote apparatus 2. One or more of the remote apparatuses 2 may be user apparatus associated with another user.
The system 1 further comprises server apparatus 5 and transceiver apparatus 6. The transceiver apparatus 6 is configured to enable the server apparatus 5 to receive information transmitted wirelessly from the user communication apparatus and/ or to transmit information wirelessly to the user communication apparatus 3, 4. As will be appreciated, the remote apparatuses 2 and the server and transceiver apparatuses 5, 6 may in some examples be configured so as to enable wireless signals to be passed between the remote apparatus 2 and the server apparatus 5. The server apparatus 5, in some instances, may be a cloud server.
In some examples, the user communication apparatus 3, 4 may be configured to determine its own location using a global navigation satellite system (GNSS) such as GPS. In such examples the locations of the remote apparatuses may, where the remote apparatuses are static, be pre-stored at the server apparatus 5 with information indicative of the locations of the remote apparatuses 2 being transmitted from the server apparatus 5 to the user communication apparatus 3, 4. In examples in which one or more of the remote apparatuses 2 are mobile, each mobile apparatus may be configured to determine its location, for instance using GNSS and to transmit information indicative of its location to the server apparatus 5 which then passes this on to the user communication apparatus 3, 4·
In other examples, the server apparatus 5 may be a positioning server, with the transceiver apparatus 6 being a positioning device with which the user apparatus 3, 4 can
communicate wirelessly thereby to enable the location of the user apparatus 3, 4 to be determined. In examples in which the positioning server 5 or positioning device 6 computes the location, location information indicative of the computed location can be transmitted to the user communication apparatus 3, 4. Alternatively, the user
communication apparatus 3, 4 may be able to compute its own location based on signals received from the positioning device 6. The locations of the remote apparatuses 2 may be pre-stored by the positioning server 5, for instance when the remote apparatuses 2 are static, or may be dynamically determined (for instance based on signals passed between the remote apparatuses 2 and positioning devices 6 of the positioning system) and subsequently provided to the user communication apparatus 3, 4 by the positioning server 5· As suggested above, in some examples, instead of transmitting the locations of the remote apparatuses 2 and the user apparatus 3, 4, the positioning server 5 or device 6 may be configured to determine the directions from the user apparatus 3, 4 to each of the remote apparatuses 2. Data indicative of the directions may then be transmitted to the user communication apparatus 3, 4. The positioning server 5 may also determine a distance between the user apparatus 3, 4 and each remote apparatus 2. The information indicative of the distances may, in some examples, be transmitted to user communication apparatus 3, 4 (e.g. along with the direction information).
In some examples, the positioning device 6 may be a multi-antenna array device which is configured to enable the angle-of-arrival (AoA) of incoming packets received from the apparatuses to be determined. The AoA can then be used to determine the location of the apparatuses. Such positioning systems are well-known in the art with one such system being the high accuracy indoor positioning (HAIP) system, information in relation to which can be found for instance on the In Location Alliance website (see for instance "ILA Architecture White Paper - Release 1.0 -available on 6 July 2015 from
http://inlocationalliance.org/2014/08/ila-system-architecture-specifications/).
The interaction which is caused or enabled by the user communication apparatus 3, 4 when the relationship between the first and second directions is found to satisfy the at least one predetermined condition may be caused or enabled using a device address of the remote apparatus 2. The device address may have been received via a passive scan for broadcasted advertising packets or may have been received from the server apparatus 5
with the location or direction information relating to that remote apparatus 2. Receiving the device address from the server apparatus 5 may be beneficial as it may negate or reduce the need for the user apparatus 3, 4 to perform a passive scan for advertising packets. It may also allow the user apparatus 3, 4 to interact with a remote apparatus 2 where it hasn't previously been able to receive a packet from that apparatus, for instance because the signals from the apparatus were attenuated by intervening objects or walls.
In some specific examples, the interaction is an active scan for the remote apparatus 2 to which the first direction relates. An active scan may, in some instances, be used to obtain information necessary for forming a connection (such as a paired connection) between the two apparatuses.
Active scanning may be used by the user communication apparatus 3, 4 in order to obtain further information from the subject of the active scan. The further information may be additional to that which can be received by performing a passive scan (e.g. receiving a Bluetooth low energy advertising packet). Performing an active scan may include transmitting a request packet in response to which a response packet is received from the subject apparatus of the active scan. The request is directed towards the remote apparatus 2 using the device address of the remote apparatus 2 and may include the device address of the user communication apparatus 3, 4.
The response packet may include the device address of the remote apparatus 2. The further information may be additional information relating to the service provided by the remote apparatus 2. In some examples (e.g. those complying with the active scanning procedure defined in the Bluetooth Specification Version 4.2 (Volume 6, Part D, section 4.2)), the response packet is undirected. In other examples, the response packet may be directed using the device address of the user communication apparatus 3, 4.
In other examples, the interaction which is caused by the user communication apparatus 3, 4 when the relationship between the first direction and a second direction satisfies the at least one predetermined condition may be other than an active scan. For instance, the user communication apparatus 3, 4 may initiate a connection with the remote apparatus 2 in some other way. Once the connection is formed, the user communication apparatus 3, 4 may request the additional information it requires.
By causing performance of, or enabling, an interaction (e.g. an active scan) with one of the remote apparatuses 2 if the relationship between the first direction and the direction of user interest satisfies the at least one predetermined condition, the user is able easily to select a particular remote apparatus 2 from which to obtain further information, simply by indicating a direction of interest which is generally towards the remote apparatus. This speeds up receipt of information and, if required, formation of a connection, particularly when many remote apparatuses are in the vicinity as it allows a targeted interaction to be performed. This reduces the number of collisions and improves reliability of
communications, particularly in a system in which many different users and remote apparatuses are present.
The direction of user-interest relative to the user apparatus 3, 4 (i.e. the second direction) may be a direction corresponding (or directly corresponding) to the orientation of the user apparatus 3, 4 with respect to the remote apparatus 2. In such examples, the orientation of the user apparatus 3, 4 and the determined second direction may be fixed relative to one another. For instance, the orientation may be defined relative to a surface or edge of one of the devices 3, 4 of the user apparatus. The direction may, for instance, be the normal to the particular surface or edge. In the example of Figure 1 in which the user apparatus 3, 4 includes head-mounted wearable computer in the form of spectacles, the determined direction of interest of the user may be the normal to an outer surface of the lenses of the spectacles. In examples in which the user apparatus 3, 4 comprises only a portable communication device 4, the direction of interest may be a normal to, for instance, a top edge or a back surface of the device 4. As will be discussed in more detail with respect to Figures 2 and 3, in some examples, the user apparatus 3, 4 may include gaze detection components 31, 32 which are configured to determine a direction of a gaze of the user (also referred to as the gaze direction). In such examples, the direction of user-interest may be the gaze direction. Similarly, in some examples, the user apparatus 3, 4 may further include gesture recognition components 33, 34, configured to determine a direction of a user gesture. As will be discussed further with respect to Figures 2, 3 and 4, the gesture may include for instance a manual gesture (e.g. the user pointing towards the remote apparatus 2) or a movement of the apparatus 3, 4 (e.g. a nod of the user's head while wearing the head- mounted device 3 or a motion of the portable communication device 4).
Figures 1A-1D show a user carrying/wearing their user communication apparatus 3, 4 in an environment in which plural remote apparatuses are present. The directions from the user apparatus 3, 4 to the remote apparatuses are illustrated by dashed arrows, marked Di-n. The determined direction of user interest is illustrated by the arrow marked D2. For simplicity's sake, in the examples of Figure 1A-1D in order for the relationship between the direction of interest D2 and a direction Di-n from the user apparatus 3, 4 to one of the remote apparatuses 2 to be found to satisfy the at least one predetermined condition, they must be found to exactly or substantially align. Consequently, because in Figure lA the direction of user interest D2 does not align with one of the directions Di-n between the user apparatus 3, 4 and any of the remote apparatuses 2, no interaction between the user apparatus 3, 4 and a remote apparatus 2 is caused or enabled.
In Figure lB, the user and their apparatus 3, 4 is shown to have moved from their initial location Li to a second location L2. The route taken by the user is denoted by the series of crosses, each marking intermediate locations on the user's path between the first and second locations Li, L2. Each of the intermediate locations may have been determined by the user apparatus 3, 4 or the positioning server 5 as the apparatus is moved. Each of the arrows between the intermediate locations represents a heading of the user between the intermediate locations. The heading may, in some examples, be determined by the user apparatus 3, 4 or the server apparatus 5, by determining the direction from a particular determined location to a next determined location. In some examples, the heading may be combined with a change in orientation of the user communication apparatus to determine the orientation and so the direction of interest. This may be the case, for instance, when the user apparatus 3, 4 is not capable of determining an absolute orientation of the apparatus (for instance, when it does not include a compass or the like).
In the example of Figure lB, the direction of user interest D2 is shown as being aligned with the direction D1-1 from the user apparatus 3, 4 to a first of the remote apparatuses 2- 1. As such, in some embodiments, in response to a determination that this is the case, an interaction between the apparatuses (e.g. an active scan by the user communication apparatus 3, 4 for the remote apparatus) may be caused or enabled. However, in other examples, for instance in which a distance between user apparatus 3,4 and the remote apparatus 2 is taken into account (which is discussed in more detail below with reference to Figures 7A and 7B), it may be determined that the distance between the two
apparatuses is too great and so no action is taken.
In Figure lB, the direction of interest D2 may have, for instance, been determined based on the current heading He of the user apparatus (in this example marked by reference He) in combination with a change in orientation (which in Figure lB is zero) or by a means for determining an absolute orientation of the apparatus such as a compass 38.
Next, in Figure lC the direction of interest of the user D2 has been changed, in this example as a result of the by the user altering the orientation of the user apparatus 3, 4. The new orientation of the user apparatus (and so, in this example, also the new direction of interest of the user) may be determined by detecting the change in orientation Θ and combining (i.e. adding/ subtracting) this with an initial orientation determined based on the current heading He. The relative change in orientation Θ may be determined using, for instance, a gyroscope 35. Alternatively, an absolute orientation of the apparatus may be determined, for instance, using an electronic compass 38. In Figure lC, the new orientation of the user apparatus 3, 4 has resulted in a determined direction of interest D2 which is aligned with a direction D1-2 from the user apparatus 3, 4 to a second of the remote apparatuses 2-2. In this example, the distance between the two apparatuses 2 and 3, 4 is less than a threshold distance and so the user apparatus 3, 4 responds by causing or enabling the interaction between apparatuses. This is denoted in Figure lD, by the message marked with reference M.
Although in Figures lA to lD the direction of user interest D2 is determined based on the orientation of the user apparatus 3,4, this might instead be determined in another way, for instance, using a gaze or gesture direction of the user. Also, although in the depicted example the distance between the apparatuses is used as a further criterion or condition which must be satisfied before the interaction is enabled or caused, other criteria or conditions (such as described below with reference to Figures 7A and 7B) might also or alternatively be applied Figures 2 and 3 illustrate an example of a wearable device 3 which may form at least part of the user communication apparatus 3, 4 described with reference to Figures lA to lD. The device 3 comprises a controller 30 which is configured to control the other components of the device 3 which may include a transceiver 37 and an associated antenna 37-1. The transceiver 37 and antenna 37-1 may be operable under the control of the controller to receive and/or transmit data to/from the remote apparatuses 2. This may be the case particularly when the user apparatus 3, 4 only includes the wearable device 3 and not the accompanying portable communication device 4. The transceiver 37 may
additionally or alternatively be configured under the control of the controller 30 to receive data such as location information from the server apparatus 5 via the transceiver apparatus 6. In examples in which the location is determined via a positioning system, the transceiver 37 may also be operable under the control of the controller 30 to transmit (or receive) one or more signals (e.g. positioning packets) to (or from) the transceiver apparatus 6 for enabling the location of the device 3 to be determined. In examples in which the user apparatus 3, 4 includes both a wearable device 3 and the portable communication device 4, the controller 30 may cause the transceiver 37 to transmit and/or receive data to/from the portable communication device 4.
As discussed previously, in some examples, the wearable device 3 may include gaze detector components 31, 32. These may include retina detectors 31 which may be mounted adjacent or on the lenses of the spectacles, and a gaze angle estimator 32 for determining a gaze angle or direction based on the signals output by the retina detectors 31·
Additionally or alternatively, the device 3 may include one or more gesture detection components 33, 34, 35, 36 configured to detect gestures performed by the user and to determine a direction associated with these gestures. The gesture detection components may in some examples include an infra-red camera 33 and a gesture recognition module 34 which are configured to determine a direction of a manual gesture (e.g. a user pointing in a particular direction). Alternatively or additionally, the device 3 may include a gyroscope 35 and/or an accelerometer 36 outputs of which may enable the controller to detect physical movements of the device and to determine from those outputs a gesture direction, for instance a direction in which a user is nodding their head.
The device 3 may further include a compass 38 for allowing the absolute orientation of the device to be determined based on which the direction of user interest can be identified according to some examples. In other examples, the orientation of the device 3 may be determined using an output of the gyroscope 35 which detects relative rotational movement of the device.
Finally, in some examples the device 3 may further include a positioning module 39(e.g. a GNSS module) using which the location of the device may be determined. The positioning module may have a dedicated antenna 39-1. In examples in which the location of the device is determined using the positioning system 5, 6, the positioning module 39 may, of course, be omitted.
In addition to the retina detectors 31, Figure 2 also shows an example location of the infrared camera 33 which is located above the bridge of the user's nose in between the two lenses. The other electronic components including the controller 30 and the transceiver 37 may for instance be located in an arm of the spectacles.
Figure 4 shows an example of a portable communications device 4 which may form at least part of the user communication apparatus 3, 4. The portable communication device 4 includes a controller 40 and at least one transceiver 41 which is configured to transmit and receive data via at least one antenna 42.
In examples in which the user apparatus 3, 4 includes both the wearable device 3 and the portable communications device 4, the controller 40 may cause/enable the transceiver to transmit and/or receive data to/from the wearable device 3. For instance, in examples in which the wearable device 3 determines whether the relationship between the direction of user interest and the direction from the user apparatus 3 to the remote apparatus 2 satisfies the at least one predetermined condition, the portable communications device 4 may receive an instruction from the wearable device 3 for causing the portable
communications device 4 to cause or allow performance of the interaction between the portable communication device 4 and the remote apparatus 2 (e.g. the active scan for the remote apparatus). Alternatively, where the portable communications device 4 is configured to make the determination as to whether the relationship between the first and second directions satisfies the at least one predetermined condition, the transceiver 41 may allow receipt of signals from the wearable device 3 that are indicative of, for instance, an output of the gaze detection components, the gesture detection components and/ or the compass. Based on these received signals, location information received from the server apparatus 5 and, in some instances, determined using the positioning module 43, the controller 40 may be able to determine the direction of interest and the direction from the user communication apparatus 3 to the remote apparatus 2.
Whether in response to a signal received from the wearable device 3 which indicates that the relationship between the first and second directions satisfies the at least one predetermined condition or following determination that this is the case, the controller 40 of the portable communication device 4 may be configured to control the transceiver 41 to cause performance of, or to allow, the interaction between the portable communication device 4 and the remote apparatus 2.
The portable communication device 4 may, in some examples, include at least one of the compass 44 and the gyroscope 45 for enabling the orientation of the device 4 to be determined. Also, in examples in which the location of the device 4 is determined using GNSS, the device 3 may further include a positioning module 43, which may have a dedicated antenna 43-1. In other examples, this may be omitted, for instance where the location of the device is determined using an external positioning system. In such examples, the controller 41 may be configured to cause the transceiver 41 and the antenna 42 to transmit and/or receive signals (e.g. positioning packets) to/from the positioning device 6 of the positioning system.
Figure 5 is a schematic illustration of the server and transceiver apparatuses 5, 6 shown in Figures lA to lD. The server apparatus 5 is configured to cause location information indicative of the locations of one or more of the at least one remote apparatus 2 and, in some instances, also the user apparatus 3, 4 to be transmitted to the user apparatus 3, 4. In some examples, the server apparatus 5 may keep a record of location information for each of the remote apparatuses 2. The record may include locations of static remote apparatuses and/or may include locations of mobile remote apparatuses 2 which may be updated on a regular basis based on transmissions received from the mobile remote apparatuses 2. Where the record stored by the server apparatus 5 is dynamically updated, the server apparatus 5 may be operable to cause the updated location information to be transmitted to the user apparatus 3, 4. This may be performed on a periodic basis or when a location of the one of the remote apparatuses is determined to have changed. In this way, the user apparatus has generally up-to-date knowledge of the locations of the remote apparatuses in the vicinity. Transmissions may be sent and received by the transceiver apparatus 6, which, although not shown in the Figures, may include a controller for controlling the other components of the apparatus 6 and for enabling data to be passed to and received from the server apparatus 5 and the user and remote apparatuses 2, 3, 4.
As previously discussed, in some examples, the server apparatus 5 may be a positioning server of a positioning system which is configured to enable determination of locations of wireless apparatuses within an environment space based on signals, such as positioning packets, exchanged between the user apparatus 3, 4 and the transceiver apparatus 6. In such a context, the transceiver apparatus may be referred to as a positioning device. In some particular positioning systems, the transceiver apparatus 6 may include multiple antennas 60 in the form of a phased array and a switch 61 for switching between the antennas of the array. In such examples, the transceiver apparatus 6 or positioning server 5 is operable to determine a direction of arrival of a positioning packet having a particular
format which is transmitted from the user apparatus 3, 4. Based on this, and other constraint information including the location and orientation of the antenna array, the positioning server 5 or positioning device 6 is able to determine a location of the user apparatus 3, 4. The positioning device 5 may be alternatively or additionally configured to transmit a positioning packet of a particular format to the user apparatus 3, 4 using the phased antenna array. Based on receipt of this packet, the user apparatus 3, 4 may be able to determine the angle of departure of the packet from the positioning device 6. Based on this, and other constraint information which may also be received from the positioning device, the user communication device is able to determine its location. Although not shown in the figures, it will be appreciated that the positioning system may, and in many implementations does, include multiple positioning devices 6 distributed throughout a space (which may be indoors, such as a shopping centre or a hospital). An increased number of positioning devices 6 may improve the accuracy with which the positioning system 5, 6 is able to determine the locations of the third-party apparatuses.
Figure 6 is a schematic illustration of an example of one of the remote apparatuses 2 shown in Figures lA to lD. The remote apparatuses 2 may be of any suitable type or combination of types and may comprise a user communication apparatus (e.g. a portable communication device) associated with another user.
The remote apparatus 2 comprises a controller 20 configured to control a
transmitter/receiver 22 (which may, in some examples, be in the form of a transceiver) and an antenna 23 to interact with the user apparatus 3, 4. For instance, the
transmitter/receiver may be configured to receive an active scan request packet from the user communication apparatus 3, 4 and to respond by transmitting an active scan response packet. The controller 20 may further control the transmitter/receiver 22 to transmit advertising packets for advertising the presence of the remote apparatus 2 and providing preliminary information, for instance including the device address of the remote apparatus and service information. In some examples, the controller 20 and
transmitter/receiver 22 of the remote apparatus 2 may be operable to maintain a connection with the user communication apparatus 3, 4. In other examples, the any connection may be carried out by a separate, wirelessly connectable device 24 which may also be part of the remote apparatus 2. In some specific examples, the transceivers 37, 41, 6, 22 described above with reference to figures 3 to 6 may each be configured, under the control of respective controllers, to communicate with the other apparatuses in the system in the manner described above via
a Bluetooth transmission protocol. For instance, the transceivers 37, 41, 6, 22 may be configured to transmit and/or receive data using a Bluetooth Low Energy protocol (as described in or compatible with current version 4.2 of the Core Bluetooth specification). In other examples, however, at least some of the apparatuses 37, 41, 6, 22 may also or additionally be configured to communication using another suitable protocol. Such protocols may include but are not limited to 802.11 wireless local area network protocols, other types of Bluetooth protocol or IEEE 802.15.4 protocols.
Figures 7A and 7B are flow charts illustrating various operations which may be performed by one or more of the apparatuses described with reference to Figures lA to 6. In the flow charts, operations which may be performed by the user communication apparatus 3, 4 are shown with a solid outline and those operations which alternatively may be performed by the positioning system 5, 6 include an additional dashed outline. If, in specific examples, an operation is performed by the positioning system 5, 6, performance of that operation may be omitted by the user communication apparatus 3, 4.
Firstly, referring to Figure 7A, in operation S7.1 the location of the user apparatus 3, 4 is determined. As discussed previously, this may include the user apparatus 3, 4 using a positioning module (e.g. 43 or 39) to determine its location. Alternatively, the location may be determined based on signals passed between the user communication apparatus 3, 4 and a positioning device 6 of a positioning system. In such examples, the location may be determined by a positioning server 5 with location information indicative of the determined location transmitted back to the user communication apparatus 3, 4. In other examples, the user communication apparatus 3, 4 may be configured to determine its own location based on received signals (e.g. AoD positioning packets in an HAIP system).
In some of the examples described with reference to operation S7.1, the user
communication 3, 4 does not itself perform any calculations or the like for determining its location. However, it will be appreciated that, even in those examples, the user communications apparatus 3, 4 may be said to determine its location based on the location information received from the positioning server 5. As will be appreciated from the below discussion with regard to operation S7.3, in other examples, the user
communication apparatus 3, 4 may neither compute their own location (e.g. using GNSS) nor receive the location information indicative of their location from the positioning system 5, 6.
In operation S7.2, the location of one of more remote apparatuses 2 is determined. This may be performed by the user apparatus 3, 4 based on location information indicating locations of one or more remote apparatuses within the particular system which may be received from the server apparatus 5. The locations of the remote apparatuses 2 may be determined by the positioning system 5, 6 (or server apparatus 5 which is not part of a positioning system) based on signals passed between the positioning system 5, 6 (or server apparatus) and the remote apparatuses 2. For instance, remote apparatuses 2 may determine their location using GNSS and may transmit signals including location information to the server apparatus 5. Alternatively, the positioning system 5, 6 may determine the locations of the remote apparatuses 2 based on signals such as positioning packets passed between the remote apparatuses 2 and positioning devices 6 of the positioning system 5, 6. Where one or more of the remote apparatuses 2 is a mobile device, signals may be passed regularly between the remote apparatuses 2 and the positioning system.
As discussed previously, in some examples, locations of static remote apparatuses 2 may be pre-stored in the positioning system 5, 6 and so an active computation of the location may not be required. Similarly as described with reference to operation S7.1, in some examples, the location information indicative of the locations of the remote apparatuses 2 may not be provided to the user communication apparatus 3, 4.
In operation S7.3, at least one first direction is determined based on the locations determined in operations S7.1 and S7.2. The first direction may be a direction between the location of the user apparatus 3, 4 and the location of one of the at least one remote apparatuses 2. The direction may be determined either from the user apparatus to the remote apparatus or vice versa. In systems in which more than one remote apparatuses 2 is present, the direction from the user apparatus 3, 4 to each of the remote apparatuses may be determined 2.
The first directions may in some examples be computed by the user communication apparatus 3, 4 based on its own location, which it may have computed itself or may have received from the positioning system 5, 6, and the received location information indicative of locations of the remote apparatuses 2. In other examples, the first directions may be computed or calculated by the positioning system 5, 6, with direction information
indicative of the first directions being transmitted to, and received by, the user
communication apparatus 3, 4.
In operation S7.4, the direction of user interest (i.e. the second direction) is determined. The direction of the user interest may be determined in a number of different ways. For instance, the direction of user interest may be determined based on an orientation of the user communication apparatus 3, 4, for instance a direction in which a particular face or edge of the apparatus 3, 4 is facing. For example, where the user communication apparatus 3, 4 includes a wearable device such as a pair of spectacles 3, the direction of user interest may be taken as the normal outer faces of the spectacle lenses. In examples in which a the user apparatus 3, 4 does not include a wearable device, the direction of user interest may be, for instance, a normal to a top edge or surface of a portable
communications device 4 such as a mobile phone or tablet computer. As will be appreciated, the direction of user interest in such examples corresponds directly with an orientation of the user's device.
The orientation of the user device 3 or 4 may be determined based on an absolute orientation measured using, for instance, the compass 38 or 44. Alternatively, the orientation of the device 3 or 4 may be determined based on a combination of a current heading He and detected change in orientation Θ. The change in orientation Θ may be detected using the gyroscope 35 or 45. If no signal is output by e.g. the gyroscope 35 or 45, the change in orientation is assumed to be zero. In such an instance, the combination of the heading He and change in orientation equates to the heading He. The current heading He may be determined by the user apparatus 3, 4 based on the two most recently determined locations or may be determined by and received from the positioning system 5, 6. In other examples, the direction of user interest may be determined by detecting a gaze direction or a gesture direction as discussed previously.
In operation S7.5, it is determined if the relationship between the direction of user interest and a direction from the user apparatus 3, 4 to a remote apparatus 2 satisfies at least one predetermined condition. Where the system includes plural remote apparatuses 2, this operation may include comparing the direction of user interest with a direction from the user apparatus 3, 4 to each of the remote apparatuses 2. It may additionally include, for each remote apparatus 2, determining the magnitude of its angular separation from the direction of user interest and placing the magnitudes of angular separation in an ordered set or list.
The least one predetermined condition may include a requirement that a magnitude of the angular separation between the first and second directions is less than a predetermined value. Put another way, it may require that the direction of user interest is within an allowable range of angular separations either side of the direction between the user apparatus 3, 4 and the remote apparatus 2. In some examples, the allowable range of angles (i.e. the predetermined value) may be o to 10 degrees. However, as discussed previously, a different predetermined value may be used. The predetermined value may be dynamically selected, for instance where an area is particularly congested with remote apparatuses 2, a lower predetermined value, e.g. less than 5 degrees, may be selected. If, on the other hand, an area is not congested with remote apparatuses 2, a larger predetermined value may be used. The density of remote apparatuses 2 within an area may be determined based on information received from the server apparatus 5.
As discussed previously, the at least one condition may additionally or alternatively require that a ranking of the magnitude of the angular separation between the first and second directions may be required to be higher than or equal to a threshold ranking in an ordered set of magnitudes of angular separations between the direction of user interest and directions from the user apparatus 3, 4 to each of plural remote apparatuses 2.
If the relationship between the direction of user-interest and none of the first directions determined in operation S7.3 satisfies the predetermined condition, the method may return to operation S7.1 in which the location of user apparatus 3, 4 is again determined. In instances where the method is repeating following a negative determination in operation S7.5, operation S7.2 may be omitted. Instead, after the location of the user apparatus is determined, operation S7.3 may next be performed. This may be particularly applicable in examples in which the remote apparatuses within a particular environment are static and information indicating the locations has previously been received at the user apparatus.
If it is determined that the relationship between one of the first directions and the second direction satisfies the at least one pre-determined condition, operation S7.6 may be performed. In operation S7.6, it is determined if at least one further criterion or condition with respect to the remote apparatus 2 is satisfied. This may include a number of different operations which are discussed below with reference to Figure 7B. If it is determined that the requisite at least one further criterion is satisfied, the user communication apparatus 3, 4 proceeds to operation S7.7.
In operation S7.7, the user communication apparatus 3, 4 causes or allows performance of an interaction between the remote apparatus 2 and the user communication apparatus 3, 4. This operation may be performed on the basis of an identifier, such as a device address, of the remote apparatus 2. As discussed previously, the device address may have been received directly from the remote apparatus 2 via an advertising packet or from the server apparatus 5. In the example of Figure 7A, the interaction between the remote apparatus 2 and the user communication apparatus 3, 4 is an active scan by the user communication apparatus 3, 4 for the remote apparatus 2. Causing performance of the active scan may include, in operation S7.7-1, causing addition of the remote apparatus 2 to a stored white-list. The white-list may be a list of remote apparatuses 2 for which active scanning is permitted. The user communication apparatus 3, 4 may be configured such that, if a remote apparatus 2 is not on the white-list, active scans for that remote apparatus 2 are not performed. The white-list may include the identifiers of various remote apparatuses 2 and may be stored in memory of the user communication apparatus 3, 4.
Causing performance of the active scan may further or alternatively include causing initiation of the active scan in operation S7.7-2. Causing initiation of the active scan may include using the identifier of the remote apparatus 2 to transmit one or more active scan request packets to the remote apparatus 2.
It will be understood from the above discussion with respect to Figure 7A that the wireless communication apparatus 3 may be operable to allow a user to cause a wireless interaction to occur between their communication apparatus 3, 4 and the remote apparatus simply by orienting their device generally towards the remote apparatus 2 with which an interaction is desired. Consequently, if as in the examples of Figures 1 to 3, the user's apparatus includes electronic glasses or spectacles 3, the user or wearer may be able to cause an interaction to occur between one of their devices and the remote apparatus 2 simply by facing generally towards the remote apparatus 2 when wearing the spectacles. Similarly, in examples in which the direction of user interest is a gaze direction or a gesture direction, the user may simply look or gesture towards a remote apparatus 2 in order to cause an interaction to occur. It will of course be appreciated that the flow chart of Figure 7A is only an example of a method which may be performed and should not be considered limiting. Indeed, the different functions/operations depicted may be performed in a different order and/or
concurrently with each other. Furthermore, one or more of the above-described functions may be optional or may be combined.
Figure 7B is a flowchart illustrating various operations, combinations of which may make up the determination of operation S7.6 of Figure A. As will be appreciated the order in which the steps are performed may be different to that shown in Figure 7B and also various operations may be omitted.
The operations of Figure 7B may be performed after it is determined, in operation S7.5, that the relationship between one of the first directions and the direction of user interest satisfies the at least one predetermined condition.
In operation S7.6-1, a distance between the user communication apparatus 3, 4 and the remote apparatus 2 is determined. This determination can be performed based on the locations of the user apparatus 3, 4 and the remote apparatus 2 as determined in operations S7.1 and S7.2 respectively. This may be calculated by the positioning system 5, 6 and distance information indicative of this may be provided to the user communication apparatus (e.g. along with the direction information). The user communication apparatus 3, 4 then determines the distance based on the received distance information.
Next, in operation S7.6-2, it is determined whether the determined distance satisfies a predetermined criterion. The distance may satisfy the criterion if, for instance, it is below a threshold distance. If it is determined that the distance satisfies the criterion, the user communication apparatus 3, 4 may proceed to operation S7.6-3 (or one of operations S7.6-5 and S7.7). If, however, it is determined that the distance does not satisfy the criterion, operation S7.1 may once again be performed. In other examples, the distance information may not be provided to the user
communication apparatus 3, 4. Instead, the distance may be determined by the positioning system 5, 6 which then determines if it satisfies the criterion (e.g. is below a threshold). If it is found to satisfy the criterion, the positioning system 5, 6 may respond by transmitting the direction information to the user communication apparatus. If, however, it is found not to satisfy the criterion, the positioning system 5, 6 may respond by not transmitting (or withholding) the direction information. Consequently, in such examples, the user communication apparatus 3, 4 will only receive direction information
for remote apparatuses 2 for which the distance satisfies the criterion. Therefore, the user apparatus 3, 4 is able to determine implicitly that, if direction information relating to a remote apparatus 2 is received, the distance to that remote apparatus 2 satisfies the criterion.
As will be appreciated, applying a threshold distance, may allow an active scan for remote apparatuses 2 to be performed only for remote apparatuses 2 which are nearby. This may reduce occurrences of unintentional interactions (e.g. active scans) for remote apparatuses 2 that are far away, but just happen to be in the determined direction of user-interest.
In operation S7.6-3, the user communication apparatus 3, 4 determines a type of the remote apparatus 2. This may be determined for instance based on information included with the location information from the sever apparatus 5 or received directly from the remote apparatus (e.g. in an advertising packet). In some examples, the server apparatus 5 may retransmit advertising packets received from remote apparatuses 2 using one or more nearby transceiver apparatuses 6. This would allow the advertising packets to reach (nearby) places to which there is no radio path from the remote apparatus 2. Of course, in such examples, the server apparatus 5 may also act as a proxy for any other traffic or interactions between user apparatus 3, 4 and remote apparatus 2.
Next, in operation S7.6-4, it is determined if the remote apparatus 2 is of a suitable or allowed type. A list of allowed or suitable types may be stored by the user apparatus 3, 4. For instance, the determined type may indicate whether or not the remote apparatus is configured to provide responses to an active scan and/or is able to participate in a connection with another apparatus. In such an example, if the remote apparatus is of a type which is not suitable to provide responses to an active scan, it will be determined that the type is not suitable (or allowed). If it is determined that the device is suitable, the apparatus 3, 4 may proceed to operation S7.6-5. If, however, it is determined that the type of the remote apparatus 1 is not suitable, operation S7.1 may once again be performed. Other information upon which the determination of S7.6-4 may be made may include information indicating services available from the remote apparatus (e.g. if a particular service is available, the apparatus may be determined to be suitable) and whether or not the remote apparatus is known by the user apparatus (e.g. if the remote apparatus is not known, it may be determined that the remote apparatus is not suitable).
Performance of operations S7.6-3 and S7.6-4 may prevent computing resources being wasted by preventing active scans being performed in respect of remote apparatuses
which are not of a suitable type (e.g. which are not suitable to respond to an active scan or which are not capable of establishing a connection).
In operation S7.6-5 (which may in some examples be performed directly after operation S7.6 or before operation S7.6-1), a user indication is received. The user indication may be of any number of different types received via any suitable interface. For instance, a manual gesture or a physical movement of the apparatus may be detected by the gesture detection components. Alternatively or additionally, the gaze direction and or a blink of the user's eyes may be detected via the gaze detection components. In some specific examples, the user indication may be provided by the user moving the user
communication apparatus 3, 4 in a predetermined manner (e.g. by nodding their head). This may be detected by the gyro device 35 or accelerometer 36. Alternatively, the user indication may be received via an input interface such as a touch sensitive panel and/or a physical key (not shown in the Figures). In yet other examples, the user indication may be received via a voice control interface.
The user indication may be provided by gazing or gesturing towards the remote apparatus 2 in addition to orientating their device (which in such examples indicates the direction of user interest) generally towards the remote apparatus 2. It will therefore be appreciated that, in some instances, in order for the interaction to occur, it may be required that the user physically orientates one of their devices such that it is directed to the remote apparatus 2 and that the user gestures or looks/gazes towards remote apparatus 2.
Alternatively, in some examples, it may be required that the user gazes and gestures towards the remote apparatus 2, but it may not be necessary for a user device to be orientated in a particular way with respect to the remote apparatus 2.
Subsequently, in operation S7.6-6 it is determined if the received user indication indicates that an interaction with the remote apparatus 2 is desired. This may be indicated in any suitable way. For instance, the user may select a selectable option which is caused to be presented to the user by their apparatus 3, 4 in response to a positive determination being reached in operation S7.5. The selectable option may allow the user to indicate whether or not they would like an active scan for the remote apparatus 2 to be performed. In other examples, the user may indicate that they wish for the active scan to occur by performing a recognised movement of their apparatus 3, 4 (e.g. nodding their head while wearing the glasses 3) which is detectable using the gyro device 350. In yet other examples, determining whether the received user indication indicates that an active scan for the remote apparatus 2 is required may include determining if at least one of a gesture
direction or a gaze direction adopts a predetermined relationship with the direction between the user apparatus 3, 4 and the remote apparatus 2. The predetermined relationship may be similar to one of the predetermined conditions described with reference to operation S7.5 (e.g. that the magnitude of an angular separation between the first direction and the gaze or gesture direction is less than a predetermined value), although in some examples allowable ranges of angular separation may be different for operations S7.5 and S7.6-6.
If it is determined in operation S7.6-6 that an active scan for the remote apparatus 2 is required, the user communication apparatus 3, 4 may proceed to operation S7.7. If, however, it is determined that an active scan is not required, operation S7.1 may once again be performed.
Various operations described with reference to Figure 7B reduce the likelihood that performance of a wireless interaction between two apparatuses is unintentionally caused. As will of course be appreciated, the user's apparatus 3, 4 may be configured to perform all of the operations of Figure 7B (in the order shown in the Figure or in a different order) or may be configured only to perform any appropriate subset of the operations shown (for example, but not limited to, only operations S7.6-5 and S7.6-6).
Also as discussed above, the functionality described above in reference to the user communication apparatus 3 , 4 may be provided by single user device e.g. one of the wearable device 3 and the portable communications device 4 which may be configured to perform at least operations S7.4, S7.5 and S7.7 as described with reference to Figure 7A.
Alternatively, the wearable device 3 may be an auxiliary device which maintains an ongoing connection with the portable communications device 4 with the two devices performing different ones of the above-described operations. For instance, the portable communication device 4 may perform at least operations S7.5 and S7.7 described with reference to Figure 7A, and the wearable device 3 may perform (or at least enable) the determination of the direction of user interest. Obviously this is an example only and in other examples the division of functionality may be different. The location of the user apparatus 3, 4 which is used to determine the first direction may be the location of the wearable device 3 or the portable communication device 4, depending on the way in which the location is determined.
In examples in which the user's apparatus 3, 4 includes a wearable device 3, this may be of a different type to that illustrated in the figures. For instance, the wearable device 3 may be a smart watch. Figure 8 is an example of operations, which have all been discussed previously with respect to Figures 7A and 7B, which may be performed by the positioning system 5, 6. When considered from the perspective of the positioning system 5, 6, both the user apparatus 3, 4 and the remote apparatuses 2 may be referred to as third-party apparatuses as they are not part of the positioning system.
In operation S8.1, the location of at least one remote apparatus 2 (the second third-party apparatus) is determined. Determination of the location of the remote apparatus 2 may be performed as described with reference to operation S7.2. For instance, in some examples, it may be determined based on positioning packets transmitted by the remote apparatuses and received at a positioning device 6 of the positioning system 5, 6. In such examples, the positioning system 5, 6 may determine an angle-of-arrival of the packet and use this, along with other constraint information, to determine the location of the remote apparatus 2. In operation S8.2, the location of the user communication apparatus 3, 4 (which may be referred to as the first third-party apparatus) is determined. This may be determined as described with reference to S7.1. For instance, it may be determined similarly to the location of the at least one remote apparatus as discussed with reference to operations S8.1.
In operation S8.3, at least one first direction (i.e. the direction from the user
communication apparatus 3, 4 to a remote apparatus 2 or vice versa) is determined based on the locations of the user apparatus 3, 4 and the remote apparatuses 2. In operation S8.4, the distance corresponding to each determined first direction is determined.
In operation S8.5, it is determined if the distance satisfies the predetermined criterion. This may be performed as described with reference to the operations S7.6-2. If it is determined that the distance satisfies the criterion, the positioning system 5, 6 may proceed to operation S8.6 in which direction information relating to each remote apparatus 2 for which the distance satisfies the criterion is transmitted to the user
communication apparatus 3, 4. After transmitting the direction information, the positioning system may return to one of operations S8.1 and S8.2, which as will be appreciated may be performed in any order. If it is determined that the distance does not satisfy the criterion, the positioning system 5, 6 may return to one of operations S8.1 and S8.2.
As will of course be appreciated, the flow chart of Figure 8 is an example only and that operations may be performed in a different order or may be omitted entirely. For instance, in some examples, server apparatus 5 may only perform operation S8.1 and may subsequently transmit location information relating to the remote apparatuses 2 to the user apparatus 3, 4. In other examples, the distance may be determined and compared with the criterion prior to determining the first direction, with the direction only being determined for those remote apparatuses 2 for which the distance satisfies the criterion. In yet other examples, the distance may be determined in operation S8. 4 but operation S8.5 may not be performed. Instead, distance information may be transmitted to the user apparatus 3, 4 along with the direction information in operation S8.6.
The operations described with reference to Figure 8 provide a process by which the processing and computational burden placed on the user apparatus 3, 4 may be reduced, thereby reducing, among other things, the power consumption of the user apparatus 3, 4.
As used herein, "towards", "alignment" or "general alignment", may include range of angles around an exact alignment, suitable for indicating that that the user is interested in a particular remote apparatus 2.
Some further details of components and features of the above-described apparatuses 2, 3, 4, 5 and alternatives for them will now be described. The controllers 20, 30, 40, 50 of each of the apparatuses or devices 2, 3, 4, 5 comprise processing circuitry 201, 301, 401, 501 communicatively coupled with memory 202, 302, 402, 502. The memory 202, 302, 402, 502 has computer readable instructions 202A, 302A, 402A, 502A stored thereon, which when executed by the processing circuitry 201, 301, 401, 501 causes the processing circuitry 201, 301, 401, 501 to cause performance of various ones of the operations described with reference to Figures 1 to 7B.
The processing circuitry 201, 301, 401, 501 of any of the apparatuses 2, 3, 4, 5 described with reference to Figures 1 to 7 may be of any suitable composition and may include one or more processors 201A, 301A, 401A, 501A of any suitable type or suitable combination of types. For example, the processing circuitry 201, 301, 401, 501 may be a programmable processor that interprets computer program instructions 202A, 302A, 402A, 502A and processes data. The processing circuitry 201, 301, 401, 501 may include plural
programmable processors. Alternatively, the processing circuitry 201, 301, 401, 501 may be, for example, programmable hardware with embedded firmware. The processing circuitry 201, 301, 401, 501 may be termed processing means. The processing circuitry 201, 301, 401, 501 may alternatively or additionally include one or more Application
Specific Integrated Circuits (ASICs). In some instances, processing circuitry 201, 301, 401, 501 may be referred to as computing apparatus.
The processing circuitry 201, 301, 401, 501 is coupled to the respective memory (or one or more storage devices) 202, 302, 402, 502 and is operable to read/write data to/from the memory 202, 302, 402, 502. The memory 202, 302, 402, 502 may comprise a single memory unit or a plurality of memory units, upon which the computer readable instructions (or code) 202A, 302A, 402A, 502A is stored. For example, the memory 202, 302, 402, 502 may comprise both volatile memory and non-volatile memory. For example, the computer readable instructions 202A, 302A, 402A, 502A may be stored in the non-volatile memory and may be executed by the processing circuitry 201, 301, 401, 501 using the volatile memory for temporary storage of data or data and instructions. Examples of volatile memory include RAM, DRAM, and SDRAM etc. Examples of nonvolatile memory include ROM, PROM, EEPROM, flash memory, optical storage, magnetic storage, etc. The memories in general may be referred to as non-transitory computer readable memory media.
The term 'memory', in addition to covering memory comprising both non-volatile memory and volatile memory, may also cover one or more volatile memories only, one or more non-volatile memories only, or one or more volatile memories and one or more nonvolatile memories.
The computer readable instructions 202A, 302A, 402A, 502A may be pre-programmed into the apparatuses 2, 3, 4, 5. Alternatively, the computer readable instructions 202A, 302A, 402A, 502A may arrive at the apparatus 2, 3, 4, 5 via an electromagnetic carrier signal or may be copied from a physical entity 210 (see Figure 5) such as a computer program product, a memory device or a record medium such as a CD-ROM or DVD. The
computer readable instructions 202A, 302A, 402A, 502A may provide the logic and routines that enables the devices/apparatuses 2, 3, 4, 5 to perform the functionality described above. The combination of computer-readable instructions stored on memory (of any of the types described above) may be referred to as a computer program product.
Where applicable, the BLE-capability of the apparatuses 2, 3, 4, 5 may be provided by a single integrated circuit. It may alternatively be provided by a set of integrated circuits (i.e. a chipset). The BLE-capability may alternatively be a hardwired, application-specific integrated circuit (ASIC).
As will be appreciated, the apparatuses 2, 3, 4, 5 described herein may include various hardware components which have may not been shown in the Figures. For instance, the portable communications device 4 may in some implementations be a mobile telephone or a tablet computer and so may contain components commonly included in a device of the specific type. Similarly, the apparatuses 2, 3, 4, 5 may comprise further optional software components which are not described in this specification since they may not have direct interaction to embodiments of the invention.
Embodiments of the present invention may be implemented in software, hardware, application logic or a combination of software, hardware and application logic. The software, application logic and/or hardware may reside on memory, or any computer media. In an example embodiment, the application logic, software or an instruction set is maintained on any one of various conventional computer-readable media. In the context of this document, a "memory" or "computer-readable medium" may be any media or means that can contain, store, communicate, propagate or transport the instructions for use by or in connection with an instruction execution system, apparatus, or device, such as a computer.
Reference to, where relevant, "computer-readable storage medium", "computer program product", "tangibly embodied computer program" etc, or a "processor" or "processing circuitry" etc. should be understood to encompass not only computers having differing architectures such as single/multi processor architectures and sequencers/parallel architectures, but also specialised circuits such as field programmable gate arrays FPGA, application specify circuits ASIC, signal processing devices and other devices. References to computer program, instructions, code etc. should be understood to express software for a programmable processor firmware such as the programmable content of a hardware
device as instructions for a processor or configured or configuration settings for a fixed function device, gate array, programmable logic device, etc.
As used in this application, the term 'circuitry' refers to all of the following: (a)hardware- only circuit implementations (such as implementations in only analogue and/or digital circuitry) and (b) to combinations of circuits and software (and/or firmware), such as (as applicable): (i) to a combination of processor(s) or (ii) to portions of processor(s)/software (including digital signal processor(s)), software, and memory(ies) that work together to cause an apparatus, such as a mobile phone or server, to perform various functions) and (c) to circuits, such as a microprocessor(s) or a portion of a microprocessor(s), that require software or firmware for operation, even if the software or firmware is not physically present.
This definition of 'circuitry' applies to all uses of this term in this application, including in any claims. As a further example, as used in this application, the term "circuitry" would also cover an implementation of merely a processor (or multiple processors) or portion of a processor and its (or their) accompanying software and/or firmware. The term
"circuitry" would also cover, for example and if applicable to the particular claim element, a baseband integrated circuit or applications processor integrated circuit for a mobile phone or a similar integrated circuit in server, a cellular network device, or other network device.
If desired, the different functions discussed herein may be performed in a different order and/or concurrently with each other. Furthermore, if desired, one or more of the above- described functions may be optional or may be combined.
Although various aspects of the invention are set out in the independent claims, other aspects of the invention comprise other combinations of features from the described embodiments and/or the dependent claims with the features of the independent claims, and not solely the combinations explicitly set out in the claims.
It is also noted herein that while the above describes various examples, these descriptions should not be viewed in a limiting sense. Rather, there are several variations and modifications which may be made without departing from the scope of the present invention as defined in the appended claims.
Claims
1. A method comprising:
causing or enabling an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus and the second direction being a direction of user-interest relative to the user apparatus.
2. The method of claim l, comprising one of:
determining the first direction based on the location of the user apparatus and the location of the remote apparatus; and
receiving information indicative of the first direction.
3. The method of claim 2, comprising:
receiving information indicative of the location of the remote apparatus; and determining the first direction based on the location of the user apparatus and the location of the remote apparatus.
4. The method of claim 2 or claim 3, the location of the remote apparatus having been determined based on at least one signal passed between the remote apparatus and a positioning device of a positioning system.
5. The method of any of claims 2 to 4, the location of the user apparatus having been determined based on at least one signal passed between the user apparatus and a positioning device of a or the positioning system.
6. The method of claim 5, comprising receiving from the positioning system at least one of:
information indicative of the determined location of the user apparatus; and the information indicative of the first direction.
7. The method of any of claims 2 to 4 comprising determining the location of the user apparatus using a global navigation satellite system.
8. The method of any preceding claim comprising determining the second direction.
9. The method of any preceding claim, wherein the second direction corresponds to an orientation of the user apparatus with respect to the remote apparatus.
10. The method of claim 9, wherein the orientation of the user apparatus is determined based on one of:
a detected absolute orientation of the user apparatus; and
a combination of a heading of the user apparatus and a detected change in orientation of the user apparatus.
11. The method of any of claims 1 to 8, wherein the second direction is a direction of gaze of a user of the user apparatus.
12. The method of any of claims 1 to 8, wherein the second direction is a direction of a gesture performed by a user of the user apparatus.
13. The method of any preceding claim, wherein the relationship between the first direction and the second direction satisfies the at least one predetermined condition if a magnitude of an angular separation between the first and second directions is less than a predetermined value.
14. The method of any of claims 1 to 13, wherein the relationship between the first direction and the second direction satisfies the at least one predetermined condition if a ranking of a magnitude of an angular separation between the first and second directions is higher than or equal to a pre-defined ranking in an ordered set of magnitudes of angular separations between the second direction and directions between the user apparatus and plural remote apparatuses.
15. The method of any preceding claim comprising:
causing or enabling the interaction only if at least one further predetermined condition with respect to the remote apparatus is satisfied.
16. The method of claim 15, comprising:
determining whether a user indication that an interaction with the remote apparatus is desired has been received; and
causing or enabling the interaction only if the user indication has been received.
17. The method of claim 15 or claim 16 comprising:
causing or enabling the interaction, only if a distance between the user apparatus and the remote apparatus satisfies a pre-determined criterion.
18. The method of claim 17, wherein the distance satisfies the pre-determined criterion if the distance is less than a threshold distance.
19. The method of any of claims 15 to 18, comprising:
determining a type of the remote apparatus; and
causing or enabling an interaction, only if the remote apparatus is determined to be of a pre-defined type.
20. The method of any preceding claim, wherein the interaction comprises
performance of an active scan for the remote apparatus by the user apparatus.
21. The method of claim 20, wherein the active scan is performed using an identifier of the remote apparatus that is received from a server apparatus or the remote apparatus.
22. A method comprising:
determining a location of a first third-party apparatus based on a radio frequency signal received from the first third-party apparatus;
determining a direction between the first third-party apparatus and a second third- party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus; and
causing transmission to the first third-party apparatus of information indicative of the determined direction.
23. The method of claim 22, further comprising determining the location of the second third-party apparatus based on a radio frequency signal received from the second third- party apparatus.
24. The method of claim 22 or claim 23, comprising:
determining a distance between the first and second third-party apparatuses; and one of:
causing transmission of information indicative of the determined distance; and
determining whether the distance satisfies a pre-determined criterion and causing transmission of the information indicative of the determined direction only if the distance does satisfy the pre-determined criterion.
25. Apparatus configured to perform a method according to any of claims 1 to 24.
26. Apparatus comprising:
at least one processor; and
at least one memory including computer program code, which when executed by the at least one processor, causes the apparatus:
to cause or enable an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus and the second direction being a direction of user-interest relative to the user apparatus.
27. The apparatus of claim 26, wherein the computer program code, when executed by the at least one processor, causes the apparatus:
either to determine the first direction based on the location of the user apparatus and the location of the remote apparatus; or
to receive information indicative of the first direction.
28. The apparatus of claim 27, wherein the computer program code, when executed by the at least one processor, causes the apparatus:
to receive information indicative of the location of the remote apparatus; and to determine the first direction based on the location of the user apparatus and the location of the remote apparatus.
29. The apparatus of claim 27 or claim 28, the location of the remote apparatus having been determined based on at least one signal passed between the remote apparatus and a positioning device of a positioning system.
30. The apparatus of any of claims 27 to 29, the location of the user apparatus having been determined based on at least one signal passed between the user apparatus and a positioning device of a or the positioning system.
31. The apparatus of claim 30, wherein the computer program code, when executed by the at least one processor, causes the apparatus to receive from the positioning system at least one of:
information indicative of the determined location of the user apparatus; and the information indicative of the first direction.
32. The apparatus of any of claims 27 to 29 wherein the computer program code, when executed by the at least one processor, causes the apparatus to determine the location of the user apparatus using a global navigation satellite system.
33. The apparatus of any of claims 26 to 32 wherein the computer program code, when executed by the at least one processor, causes the apparatus to determine the second direction.
34. The apparatus of any of claims 26 to 33, wherein the second direction corresponds to an orientation of the user apparatus with respect to the remote apparatus.
35. The apparatus of claim 34, wherein the orientation of the user apparatus is determined based on one of:
a detected absolute orientation of the user apparatus; and
a combination of a heading of the user apparatus and a detected change in orientation of the user apparatus.
36. The apparatus of any of claims 26 to 33, wherein the second direction is a direction of gaze of a user of the user apparatus.
37. The apparatus of any of claims 26 to 33, wherein the second direction is a direction of a gesture performed by a user of the user apparatus.
38. The apparatus of any of claims 26 to 37, wherein the relationship between the first direction and the second direction satisfies the at least one predetermined condition if a magnitude of an angular separation between the first and second directions is less than a predetermined value.
39. The apparatus of any of claims 26 to 38, wherein the relationship between the first direction and the second direction satisfies the at least one predetermined condition if a
ranking of a magnitude of an angular separation between the first and second directions is higher than or equal to a pre-defined ranking in an ordered set of magnitudes of angular separations between the second direction and directions between the user apparatus and plural remote apparatuses.
40. The apparatus of any of claims 26 to 39 wherein the computer program code, when executed by the at least one processor, causes the apparatus to:
cause or enable the interaction only if at least one further predetermined condition with respect to the remote apparatus is satisfied.
41. The apparatus of claim 40, wherein the computer program code, when executed by the at least one processor, causes the apparatus:
to determine whether a user indication that an interaction with the remote apparatus is desired has been received; and
to cause or enable the interaction only if the user indication has been received.
42. The apparatus of claim 40 or claim 41 wherein the computer program code, when executed by the at least one processor, causes the apparatus to:
cause or enable the interaction, only if a distance between the user apparatus and the remote apparatus satisfies a pre-determined criterion.
43. The apparatus of claim 42, wherein the distance satisfies the pre-determined criterion if the distance is less than a threshold distance.
44. The apparatus of any of claims 40 to 43, wherein the computer program code, when executed by the at least one processor, causes the apparatus to:
determine a type of the remote apparatus; and
cause or enable an interaction, only if the remote apparatus is determined to be of a pre-defined type.
45. The apparatus of any of claims 26 to 44, wherein the interaction comprises performance of an active scan for the remote apparatus by the user apparatus.
46. The apparatus of claim 45, wherein the active scan is performed using an identifier of the remote apparatus that is received from a server apparatus or the remote apparatus.
47. Apparatus comprising:
at least one processor; and
at least one memory including computer program code, which when executed by the at least one processor, cause the apparatus:
to determine a location of a first third-party apparatus based on a radio frequency signal received from the first third-party apparatus;
to determine a direction between the first third-party apparatus and a second third-party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus; and
to cause transmission to the first third-party apparatus of information indicative of the determined direction.
48. The apparatus of claim 47, wherein the computer program code, when executed by the at least one processor, causes the apparatus to determine the location of the second third-party apparatus based on a radio frequency signal received from the second third- party apparatus.
49. The apparatus of claim 47 or claim 48, wherein the computer program code, when executed by the at least one processor, causes the apparatus:
to determine a distance between the first and second third-party apparatuses; and one of:
to cause transmission of information indicative of the determined distance; and
to determine whether the distance satisfies a pre-determined criterion and causing transmission of the information indicative of the determined direction only if the distance does satisfy the pre-determined criterion.
50. Computer-readable code which, when executed by computing apparatus, causes the computing apparatus to perform a method according to any of claims 1 to 24.
51. A computer-readable medium having computer-readable code stored thereon, the computer readable code, when executed by a least one processor, cause performance of at least:
causing or enabling an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the
remote apparatus and the second direction being a direction of user-interest relative to the user apparatus.
52. A computer-readable medium having computer-readable code stored thereon, the computer readable code, when executed by a least one processor, cause performance of at least:
determining a location of a first third-party apparatus based on a radio frequency signal received from the first third-party apparatus;
determining a direction between the first third-party apparatus and a second third- party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus; and
causing transmission to the first third-party apparatus of information indicative of the determined direction.
53. Apparatus comprising:
means for causing or enabling an interaction between a user apparatus and a remote apparatus if it is determined that a relationship between a first direction and a second direction relative to the user apparatus satisfies at least one predetermined condition, the first direction being a direction between the user apparatus and the remote apparatus and having been determined based on a location of the user apparatus and a location of the remote apparatus and the second direction being a direction of user- interest relative to the user apparatus.
54. Apparatus comprising:
means for determining a location of a first third-party apparatus based on a radio frequency signal received from the first third-party apparatus;
means for determining a direction between the first third-party apparatus and a second third-party apparatus based on the location of the first third-party apparatus and a location of the second third-party apparatus; and
means for causing transmission to the first third-party apparatus of information indicative of the determined direction.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/FI2015/050503 WO2017009518A1 (en) | 2015-07-16 | 2015-07-16 | Methods, apparatuses and computer readable media for causing or enabling performance of a wireless interaction |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/FI2015/050503 WO2017009518A1 (en) | 2015-07-16 | 2015-07-16 | Methods, apparatuses and computer readable media for causing or enabling performance of a wireless interaction |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2017009518A1 true WO2017009518A1 (en) | 2017-01-19 |
Family
ID=53776636
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/FI2015/050503 Ceased WO2017009518A1 (en) | 2015-07-16 | 2015-07-16 | Methods, apparatuses and computer readable media for causing or enabling performance of a wireless interaction |
Country Status (1)
| Country | Link |
|---|---|
| WO (1) | WO2017009518A1 (en) |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20090319181A1 (en) * | 2008-06-20 | 2009-12-24 | Microsoft Corporation | Data services based on gesture and location information of device |
| US20110081923A1 (en) * | 2009-10-02 | 2011-04-07 | Babak Forutanpour | Device movement user interface gestures for file sharing functionality |
| EP2317281A2 (en) * | 2009-11-03 | 2011-05-04 | Samsung Electronics Co., Ltd. | User terminal, method for providing position and method for guiding route thereof |
| US20140114564A1 (en) * | 2012-10-19 | 2014-04-24 | Microsoft Corporation | Mobile navigation to a moving destination |
| US20150153922A1 (en) * | 2013-12-01 | 2015-06-04 | Apx Labs, Llc | Systems and methods for unlocking a wearable device |
-
2015
- 2015-07-16 WO PCT/FI2015/050503 patent/WO2017009518A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20090319181A1 (en) * | 2008-06-20 | 2009-12-24 | Microsoft Corporation | Data services based on gesture and location information of device |
| US20110081923A1 (en) * | 2009-10-02 | 2011-04-07 | Babak Forutanpour | Device movement user interface gestures for file sharing functionality |
| EP2317281A2 (en) * | 2009-11-03 | 2011-05-04 | Samsung Electronics Co., Ltd. | User terminal, method for providing position and method for guiding route thereof |
| US20140114564A1 (en) * | 2012-10-19 | 2014-04-24 | Microsoft Corporation | Mobile navigation to a moving destination |
| US20150153922A1 (en) * | 2013-12-01 | 2015-06-04 | Apx Labs, Llc | Systems and methods for unlocking a wearable device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| KR102691009B1 (en) | Device location detection | |
| US12457450B2 (en) | Systems and methods for ultra-wideband applications | |
| KR102011457B1 (en) | Mobile terminal and control method thereof | |
| US20170160800A1 (en) | Device control | |
| KR20240022614A (en) | Information indication methods, devices, user equipment, base stations and storage media | |
| US10989559B2 (en) | Methods, systems, and devices for displaying maps | |
| US20170366951A1 (en) | Method and apparatus for providing augmented reality services | |
| US10192332B2 (en) | Display control method and information processing apparatus | |
| EP3353495B1 (en) | Causing a transition between positioning modes | |
| EP4498714A1 (en) | Information processing method and apparatus, communication device, and storage medium | |
| WO2014003414A1 (en) | Method for measuring location of terminal in wireless network and device therefor | |
| CN105527643A (en) | Positioning method for mobile terminal and mobile terminal | |
| KR101808696B1 (en) | Mobile terminal and method for controlling of thereof | |
| US20250061808A1 (en) | Operation method of ue related to interactive crossing in v2x | |
| US11543487B2 (en) | Causing performance of an active scan | |
| CN117397258A (en) | Information processing methods and devices, communication equipment and storage media | |
| KR101967765B1 (en) | Mobile terminal and method for controlling of the same | |
| CN111107487B (en) | Position display control method and related device | |
| KR20240095285A (en) | How to operate a node related to V2X in a wireless communication system. | |
| WO2017009518A1 (en) | Methods, apparatuses and computer readable media for causing or enabling performance of a wireless interaction | |
| US20180262968A1 (en) | Method and apparatus for determining a routing destination | |
| KR102415004B1 (en) | Mobile terminal and operating method thereof | |
| KR20130015975A (en) | Apparatus and method for detecting a vehicle | |
| KR101571736B1 (en) | Power saving method of anchor device in indoor positioning system | |
| KR20170027135A (en) | Mobile terminal and method for controlling the same |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15745518 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 15745518 Country of ref document: EP Kind code of ref document: A1 |