Language selection

Search

Patent 3076837 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent Application: (11) CA 3076837
(54) English Title: MOTION LOCALIZATION IN A WIRELESS MESH NETWORK BASED ON TIME FACTORS
(54) French Title: LOCALISATION D'UN MOUVEMENT DANS UN RESEAU MAILLE SANS FIL EN FONCTION DE FACTEURS TEMPORELS
Status: Report sent
Bibliographic Data
(51) International Patent Classification (IPC):
  • G01S 5/00 (2006.01)
  • H04W 64/00 (2009.01)
(72) Inventors :
  • OLEKAS, CHRISTOPHER VYTAUTAS (Canada)
  • GRIESDORF, DUSTIN (Canada)
(73) Owners :
  • COGNITIVE SYSTEMS CORP. (Canada)
(71) Applicants :
  • COGNITIVE SYSTEMS CORP. (Canada)
(74) Agent: MOFFAT & CO.
(74) Associate agent:
(45) Issued:
(86) PCT Filing Date: 2018-01-17
(87) Open to Public Inspection: 2019-04-25
Examination requested: 2022-09-22
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): Yes
(86) PCT Filing Number: PCT/CA2018/050051
(87) International Publication Number: WO2019/075552
(85) National Entry: 2020-03-24

(30) Application Priority Data:
Application No. Country/Territory Date
15/789,815 United States of America 2017-10-20

Abstracts

English Abstract

In a general aspect, a location of detected motion in a space is determined. In some aspects, motion of an object in a space is detected based on a series of wireless signals communicated through the space by a wireless communication system comprising multiple wireless communication devices. Each wireless signal is received by a respective wireless communication device among the wireless communication devices. Time factors are computed based on sequence values included in the respective wireless signals, where the sequence values represent a time position of the wireless signal within the series. A location of the detected motion is determined based on the time factors.


French Abstract

De manière générale, l'invention concerne la détermination d'un emplacement d'un mouvement détecté dans un espace. Selon certains aspects, un mouvement d'un objet dans un espace est détecté en fonction d'une série de signaux sans fil communiqués dans l'espace par un système de communication sans fil comprenant des dispositifs de communication sans fil multiples. Chaque signal sans fil est reçu par un dispositif de communication sans fil respectif parmi les dispositifs de communication sans fil. Des facteurs temporels sont calculés en fonction de valeurs de séquence incluses dans les signaux sans fil respectifs, les valeurs de séquence représentant une position temporelle du signal sans fil dans la série. Un emplacement du mouvement détecté est déterminé en fonction des facteurs temporels.

Claims

Note: Claims are shown in the official language in which they were submitted.


CLAIMS
What is claimed is:
1. A motion detection method comprising:
detecting motion of an object in a space, based on a series of wireless
signals
communicated through the space by a wireless communication system comprising
multiple wireless communication devices;
by operation of one or more processors, computing time factors for each
respective pair of the wireless communication devices, based on sequence
values
included in respective wireless signals transmitted and received between the
pair of the
wireless communication devices, wherein the sequence value in each wireless
signal
represents a time position of the wireless signal within the series; and
determining a location of the detected motion in the space based on the time
factors.
2. The method of claim 1, wherein the wireless communication system
comprises a
hub device and remote sensor devices, wherein the hub device receives motion
indicator values from the remote sensor devices and determines the location of
the
detected motion based on the received motion indicator values and the time
factors.
3. The method of claim 1, comprising:
computing motion indicator values for the respective wireless communication
devices of the wireless communication system, the motion indicator value for
each
individual wireless communication device representing a degree of motion
detected by
the individual wireless communication device and being based on a subset of
the series
wireless signals that are transmitted or received by the individual wireless
communication device; and
determining the location of the detected motion based on the motion indicator
values and the time factors.
4. The method of claim 3, comprising:
weighting each motion indicator value by an associated time factor, and
determining the location of the detected motion based on the weighted motion
indicator values,
wherein the associated time factor is for a same wireless communication device

as the motion indicator value.
37

5. The method of any one of claims 1-4, wherein computing the time factors
comprises:
selecting a reference sequence value from among sequence values included in a
set of the wireless signals received by the wireless communication devices of
the
wireless communication system, and
computing the time factors for each communication link provided by each of the

respective pairs of the wireless communication devices, wherein the computing
of the
time factor for each communication link is based on a determination of whether
the
sequence values in the wireless signals received on the communication link are
within a
threshold sequence range of the reference sequence value.
6. The method of claim 5, wherein the reference sequence value is a maximum
or
minimum sequence value in the set of the wireless signals received by the
wireless
communication devices of the wireless communication system.
7. The method of claim 5, wherein computing the time factor for each
communication link comprises determining whether a maximum sequence value
included in a subset of the wireless signals received on the communication
link is within
a threshold sequence range of the reference sequence value.
8. The method of any one of claims 1-4, comprising:
providing the sequence values as inputs to a neural network; and
computing the time factors based on an output of the neural network.
9. A computer-readable storage medium storing instructions that are
operable
when executed by the data processing apparatus to perform operations
comprising:
detecting motion of an object in a space, based on a series of wireless
signals
communicated through the space by a wireless communication system comprising
multiple wireless communication devices;
computing time factors for each respective pair of the wireless communication
devices, based on sequence values included in respective wireless signals
transmitted
and received between the pair of the wireless communication devices, wherein
the
sequence value in each wireless signal represents a time position of the
wireless signal
within the series; and
determining a location of the detected motion in the space based on the time
factors.
38

10. The computer-readable storage medium of claim 9, wherein the wireless
communication system comprises a hub device and remote sensor devices, wherein
the
hub device receives motion indicator values from the remote sensor devices and

determines the location of the detected motion based on the received motion
indicator
values and the time factors.
11. The computer-readable storage medium of claim 9, wherein the operations

comprise:
computing motion indicator values for the respective wireless communication
devices of the wireless communication system, the motion indicator value for
each
individual wireless communication device representing a degree of motion
detected by
the individual wireless communication device and being based on a subset of
the series
wireless signals that are transmitted or received by the individual wireless
communication device; and
determining the location of the detected motion based on the motion indicator
values and the time factors.
12. The computer-readable storage medium of claim 11, wherein the
operations
comprise:
weighting each motion indicator value by an associated time factor, and
determining the location of the detected motion based on the weighted motion
indicator values,
wherein the associated time factor is for a same wireless communication device

as the motion indicator value.
13. The computer-readable storage medium of any one of claims 9-12, wherein

computing the time factors comprises:
selecting a reference sequence value from among sequence values included in a
set of the wireless signals received by the wireless communication devices of
the
wireless communication system, and
computing the time factors for each communication link provided by each of the

respective pairs of the wireless communication devices, wherein the computing
of the
time factor for each communication link is based on a determination of whether
the
sequence values in the wireless signals received on the communication link are
within a
threshold sequence range of the reference sequence value.
39

14. The computer-readable storage medium of claim 13, wherein the reference

sequence value is a maximum or minimum sequence value in the set of the
wireless
signals received by the wireless communication devices of the wireless
communication
system.
15. The computer-readable storage medium of claim 13, wherein computing the

time factor for each communication link comprises determining whether a
maximum
sequence value included in a subset of the wireless signals received on the
communication link is within a threshold sequence range of the reference
sequence
value.
16. The computer-readable storage medium of any one of claims 9-12, wherein
the
operations comprise:
providing the sequence values as inputs to a neural network; and
computing the time factors based on an output of the neural network.
17. A motion detection system comprising:
multiple remote sensor devices, each remote sensor device configured to detect

motion of an object in the space based on a series of wireless signals
received from
other remote sensor devices; and
a hub device communicably coupled to the remote sensor devices and configured
to:
compute time factors for each communication link between respective
pairs of remote sensor devices based on sequence values included in respective

wireless signals transmitted and received between the pairs of the wireless
communication devices, wherein the sequence value in each wireless signal
represents
a time position of the wireless signal within the series; and
determine a location of the detected motion in the space based on the
time factors for the respective remote sensor devices.
18. The motion detection system of claim 17, wherein the remote sensor
devices and
the hub device form a wireless mesh network.
19. The motion detection system of claim 17, wherein:
each remote sensor device is configured to compute, for each communication
link between the remote sensor device and another remote sensor device, a
motion
indicator value representing a degree of motion detected by the remote sensor
device

on the communication link, the motion indicator value being based on a subset
of the
series wireless signals that are transmitted or received on the communication
link; and
the hub device is configured to determine the location of the detected motion
based on the motion indicator values and the time factors.
20. The motion detection system of claim 19, wherein the hub device is
configured
to:
weight each motion indicator value by an associated time factor, the
associated
time factor being for a same remote device as the motion indicator value; and
determine the location of the detected motion based on the weighted motion
indicator values.
21. The motion detection system of any one of claims 17-20, wherein the hub
device
is configured to compute the time factors by:
selecting a reference sequence value from among sequence values included in a
set of the wireless signals received by the wireless communication devices of
the
wireless communication system, and
computing the time factors for each communication link provided by each of the

respective pairs of the wireless communication devices, wherein the computing
of the
time factor for each communication link is based on a determination of whether
the
sequence values in the wireless signals received on the communication link are
within a
threshold sequence range of the reference sequence value.
22. The motion detection system of claim 21, wherein the reference sequence
value
is a maximum or minimum sequence value in the set of the wireless signals
received by
the wireless communication devices of the wireless communication system.
23. The motion detection system of claim 21, wherein computing the time
factor for
each communication link comprises determining whether a maximum sequence value

included in a subset of the wireless signals received on the communication
link is within
a threshold sequence range of the reference sequence value.
24. The motion detection system of any one of claims 17-20, wherein the hub
device
is configured to:
provide the sequence values as inputs to a neural network; and
compute the time factors based on an output of the neural network.
41

Description

Note: Descriptions are shown in the official language in which they were submitted.


CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
Motion Localization in a Wireless Mesh Network
Based on Time Factors
PRIORITY CLAIM
100011 This application claims priority to U.S. App. No. 15/789,815, entitled
"Motion
Localization in a Wireless Mesh Network Based on Time Factors," filed October
20,
2017, the contents of which are incorporated herein by reference.
BACKGROUND
100021 The present disclosure generally relates to motion detection and
localization.
100031 Motion detection systems have been used to detect movement, for
example, of
objects in a room or an outdoor area. In some example motion detection
systems,
infrared or optical sensors are used to detect movement of objects in the
sensor's field
of view. Motion detection systems have been used in security systems,
automated
control systems and other types of systems.
BRIEF DESCRIPTION OF THE DRAWINGS
100041 FIG. 1A illustrates an example wireless communication system;
100051 FIG. 1B illustrates an example modem of a motion detector device;
100061 FIG. 1C illustrates example communication paths defining a
communication
link between wireless communication devices;
100071 FIG. 2 illustrates an example motion probe signal;
100081 FIGS. 3A and 3B illustrate example signals communicated between
wireless
communication devices;
100091 FIGS. 4A and 4B illustrate an example wireless communication system;
100101 FIG. 5A is a table of example sequence values indicated by wireless
signals
transmitted and received in the wireless communication system of FIGS. 4A and
4B
according to a scenario of one-hundred percent (100%) throughputs;
100111 FIG. 5B is a table of example sequence values indicated by motion probe

signals received in the wireless communication system of FIGS. 4A and 4B
according to
a scenario of various throughputs;
100121 FIG. SC is a table of example motion information for communication
links in
the wireless communication system of FIGS. 4A and 4B;
1

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
100131 FIG. SD is a table of example aggregate motion indicator values and
confidence factors corresponding to wireless communication devices in the
wireless
communication network of FIGS. 4A and 4B; and
100141 FIG. 6 illustrates a process of determining a location of detected
motion in a
space.
DETAILED DESCRIPTION
100151 In some aspects of what is described here, the location of detected
motion in a
space can be determined based on motion indicator values, time factors, or a
combination thereof For example, in some instances, the location of detected
motion
may be determined based on motion indicator values for respective wireless
communication devices or links in a wireless communication system, such as a
wireless
mesh network. The motion indicator value for each individual wireless
communication
device may represent a degree of motion detected by the individual wireless
communication device (generally, or on a specific communication link), and may
be
based on a subset of the wireless signals transmitted or received by that
wireless
communication device. The location of detected motion in the space can be a
likelihood
that the object is near one or more of the wireless communication devices that
have the
highest motion indicator values. The location can be determined by selecting
the highest
motion indicator value, or selecting the motion indicator values that are
greater than a
threshold.
100161 As another example, in some instances, the location of detection motion
may
be determined based on time factors for respective wireless communication
devices or
links. The time factors may be, or may be based on: (i) range of sequence
values
included in the motion probe signals used to detect motion on that
communication link,
(ii) a set (e.g., all) of the sequence values included in the motion probe
signals used to
detect motion on that communication link, (iii) the minimum or maximum
sequence
value in the set of sequence values included in the motion probe signals used
to detect
motion on that communication link, or (iv) another indicator of a time period
over
which motion probe signals are obtained to detect motion. For example, the
time factor
may be a weighting factor that is based on the maximum or minimum sequence
values
in the set of motion probe signals used to detect motion by a device or on a
particular
communication link between devices. The weighting factor may be used to weight
the
2

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
motion indicator value for the device or link, and the weighted motion
indicator value
may be used to determine the location of the detected motion.
[0017] The systems and techniques described here may provide one or more
advantages in some instances. For example, motion of an object may be detected
based
on wireless signals (e.g., radio frequency (RF) signals) received by a
wireless
communication device, without the need for clear line-of-sight. In addition,
the location
of the detected motion may be determined based on motion indicator values for
each of
multiple wireless communication devices, time factors, or both.
[0018] FIG. 1A illustrates an example wireless communication system 100. The
example wireless communication system 100 includes three wireless
communication
devices¨a first wireless communication device 102A, a second wireless
communication
device 102B, and a third wireless communication device 102C. The example
wireless
communication system 100 may include additional wireless communication devices

and other components (e.g., additional wireless communication devices, one or
more
network servers, network routers, network switches, cables, or other
communication
links, etc.).
[0019] The example wireless communication devices 102A, 102B, 102C can operate

in a wireless network, for example, according to a wireless network standard
or another
type of wireless communication protocol. For example, the wireless network may
be
configured to operate as a Wireless Local Area Network (WLAN), a Personal Area

Network (PAN), a metropolitan area network (MAN), or another type of wireless
network. Examples of WLANs include networks configured to operate according to
one
or more of the 802.11 family of standards developed by IEEE (e.g., Wi-Fi
networks), and
others. Examples of PANs include networks that operate according to short-
range
communication standards (e.g., BLUETOOTHO, Near Field Communication (NFC),
ZigBee), millimeter wave communications, and others.
100201 In some implementations, the wireless communication devices 102A, 102B,

102C may be configured to communicate in a cellular network, for example,
according
to a cellular network standard. Examples of cellular networks include networks

configured according to 2G standards such as Global System for Mobile (GSM)
and
Enhanced Data rates for GSM Evolution (EDGE) or EGPRS; 3G standards such as
Code
Division Multiple Access (CDMA), Wideband Code Division Multiple Access
(WCDMA),
Universal Mobile Telecommunications System (UMTS), and Time Division
Synchronous
3

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
Code Division Multiple Access (TD-SCDMA); 4G standards such as Long-Term
Evolution
(LTE) and LTE -Advanced (LTE-A); and others.
100211 In the example shown in FIG. 1A, the wireless communication devices
102A,
102B, 102C can be, or they may include, standard wireless network components.
For
example, the wireless communication devices 102A, 102B, 102C may be
commercially-
available Wi-Fi access points or another type of wireless access point (WAP)
performing
one or more operations as described herein that are embedded as instructions
(e.g.,
software or firmware) on the modem of the WAP. In some cases, the wireless
communication devices 102A, 102B, 102C may be nodes of a wireless mesh
network,
such as, for example, a commercially-available mesh network system (e.g.,
GOOGLE
WIFI). In some cases, another type of standard or conventional Wi-Fi
transmitter device
may be used. The wireless communication devices 102A, 102B, 102C may be
implemented without Wi-Fi components; for example, other types of standard or
non-
standard wireless communication may be used for motion detection. In some
cases, the
wireless communication devices 102A, 102B, 102C can be, or they may be part
of, a
dedicated motion detection system. For example, the dedicated motion detection

system can include a hub device and one or more beacon devices (as remote
sensor
devices), and the wireless communication devices 102A, 102B, 102C can be
either a hub
device or a beacon device in the motion detection system.
100221 As shown in FIG. 1A, the example wireless communication device 102C
includes a modem 112, a processor 114, a memory 116, and a power unit 118; any
of
the wireless communication devices 102A, 102B, 102C in the wireless
communication
system 100 may include the same, additional or different components, and the
components may be configured to operate as shown in FIG. 1A or in another
manner. In
some implementations, the modem 112, processor 114, memory 116, and power unit

118 of a wireless communication device are housed together in a common housing
or
other assembly. In some implementations, one or more of the components of a
wireless
communication device can be housed separately, for example, in a separate
housing or
other assembly.
100231 The example modem 112 can communicate (receive, transmit, or both)
wireless signals. For example, the modem 112 may be configured to communicate
radio
frequency (RF) signals formatted according to a wireless communication
standard (e.g.,
Wi-Fi or Bluetooth). The modem 112 may be implemented as the example wireless
4

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
network modem 112 shown in FIG. 1B, or may be implemented in another manner,
for
example, with other types of components or subsystems. In some
implementations, the
example modem 112 includes a radio subsystem and a baseband subsystem. In some

cases, the baseband subsystem and radio subsystem can be implemented on a
common
chip or chipset, or they may be implemented in a card or another type of
assembled
device. The baseband subsystem can be coupled to the radio subsystem, for
example, by
leads, pins, wires, or other types of connections. FIG. 1B illustrates an
example modem
112 of a wireless communication device.
[0024] In some cases, a radio subsystem in the modem 112 can include one or
more
antennas and radio frequency circuitry. The radio frequency circuitry can
include, for
example, circuitry that filters, amplifies or otherwise conditions analog
signals, circuitry
that up-converts baseband signals to RF signals, circuitry that down-converts
RF signals
to baseband signals, etc. Such circuitry may include, for example, filters,
amplifiers,
mixers, a local oscillator, etc. The radio subsystem can be configured to
communicate
radio frequency wireless signals on the wireless communication channels. As an

example, the radio subsystem may include a radio chip 113, an RF front end
115, and
one or more antennas 117, as illustrated in FIG. 1B. A radio subsystem may
include
additional or different components. In some implementations, the radio
subsystem can
be or include the radio electronics (e.g., RF front end, radio chip, or
analogous
components) from a conventional modem, for example, from a Wi-Fi modem, pico
base
station modem, etc. In some implementations, the antenna includes multiple
antennas.
[0025] In some cases, a baseband subsystem in the modem 112 can include, for
example, digital electronics configured to process digital baseband data. As
an example,
the baseband subsystem may include a baseband chip 111, as illustrated in FIG.
1B. A
baseband subsystem may include additional or different components. In some
cases, the
baseband subsystem may include a digital signal processor (D SP) device or
another
type of processor device. In some cases, the baseband system includes digital
processing
logic to operate the radio subsystem, to communicate wireless network traffic
through
the radio subsystem, to detect motion based on motion detection signals
received
through the radio subsystem or to perform other types of processes. For
instance, the
baseband subsystem may include one or more chips, chipsets, or other types of
devices
that are configured to encode signals and deliver the encoded signals to the
radio
subsystem for transmission, or to identify and analyze data encoded in signals
from the

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
radio subsystem (e.g., by decoding the signals according to a wireless
communication
standard, by processing the signals according to a motion detection process,
or
otherwise).
100261 In some instances, the radio subsystem in the example modem 112
receives
baseband signals from the baseband subsystem, up-converts the baseband signals
to
radio frequency (RF) signals, and wirelessly transmits the radio frequency
signals (e.g.,
through an antenna). In some instances, the radio subsystem in the example
modem
112 wirelessly receives radio frequency signals (e.g., through an antenna),
down-
converts the radio frequency signals to baseband signals, and sends the
baseband
signals to the baseband subsystem. The signals exchanged between the radio
subsystem
and the baseband subsystem may be digital or analog signals. In some examples,
the
baseband subsystem includes conversion circuitry (e.g., a digital-to-analog
converter, an
analog-to-digital converter) and exchanges analog signals with the radio
subsystem. In
some examples, the radio subsystem includes conversion circuitry (e.g., a
digital-to-
analog converter, an analog-to-digital converter) and exchanges digital
signals with the
baseband subsystem.
100271 In some cases, the baseband subsystem of the example modem 112 can
communicate wireless network traffic (e.g., data packets) in the wireless
communication network through the radio subsystem on one or more network
traffic
channels. The baseband subsystem of the modem 112 may also transmit or receive
(or
both) signals (e.g., motion probe signals or motion detection signals) through
the radio
subsystem on a dedicated wireless communication channel. In some instances,
the
baseband subsystem generates motion probe signals for transmission, for
example, in
order to probe a space for motion. In some instances, the baseband subsystem
processes received motion detection signals (signals based on motion probe
signals
transmitted through the space), for example, to detect motion of an object in
a space.
100281 The example processor 114 can execute instructions, for example, to
generate
output data based on data inputs. The instructions can include programs,
codes, scripts,
or other types of data stored in memory. Additionally or alternatively, the
instructions
can be encoded as pre-programmed or re-programmable logic circuits, logic
gates, or
other types of hardware or firmware components. The processor 114 may be or
include
a general purpose microprocessor, as a specialized co-processor or another
type of data
processing apparatus. In some cases, the processor 114 performs high level
operation of
6

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
the wireless communication device 102C. For example, the processor 114 may be
configured to execute or interpret software, scripts, programs, functions,
executables, or
other instructions stored in the memory 116. In some implementations, the
processor
114 may be included in the modem 112.
100291 The example memory 116 can include computer-readable storage media, for

example, a volatile memory device, a non-volatile memory device, or both. The
memory
116 can include one or more read-only memory devices, random-access memory
devices, buffer memory devices, or a combination of these and other types of
memory
devices. In some instances, one or more components of the memory can be
integrated or
otherwise associated with another component of the wireless communication
device
102C. The memory 116 may store instructions that are executable by the
processor 114.
For example, the instructions may include instructions for determining a
location of
detected motion, such as through one or more of the operations of the example
process
600 of FIG. 6.
100301 The example power unit 118 provides power to the other components of
the
wireless communication device 102C. For example, the other components may
operate
based on electrical power provided by the power unit 118 through a voltage bus
or
other connection. In some implementations, the power unit 118 includes a
battery or a
battery system, for example, a rechargeable battery. In some implementations,
the
power unit 118 includes an adapter (e.g., an AC adapter) that receives an
external
power signal (from an external source) and coverts the external power signal
to an
internal power signal conditioned for a component of the wireless
communication
device 102C. The power unit 118 may include other components or operate in
another
manner.
100311 In the example shown in FIG. 1A, the wireless communication devices
102A,
102B transmit wireless signals (e.g., according to a wireless network
standard, a motion
detection protocol, or otherwise). For instance, wireless communication
devices 102A,
102B may broadcast wireless signals (e.g., reference signals, beacon signals,
status
signals, etc.), or they may send wireless signals addressed to other devices
(e.g., a user
equipment, a client device, a server, etc.), and the other devices (not shown)
as well as
the wireless communication device 102C may receive the wireless signals
transmitted
by the wireless communication devices 102A, 102B. In some cases, the wireless
signals
7

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
transmitted by the wireless communication devices 102A, 102B are repeated
periodically, for example, according to a wireless communication standard or
otherwise.
[0032] In the example shown, the wireless communication device 102C processes
the
wireless signals from the wireless communication devices 102A, 102B to detect
motion
of an object in a space accessed by the wireless signals, to determine a
location of the
detected motion, or both. For example, the wireless communication device 102C
may
perform one or more operations of the example process 600 of FIG. 6, or
another type of
process for detecting motion or determining a location of detected motion. The
space
accessed by the wireless signals can be an indoor or outdoor space, which may
include,
for example, one or more fully or partially enclosed areas, an open area
without
enclosure, etc. The space can be or can include an interior of a room,
multiple rooms, a
building, or the like. In some cases, the wireless communication system 100
can be
modified, for instance, such that the wireless communication device 102C can
transmit
wireless signals and the wireless communication devices 102A, 102B can
processes the
wireless signals from the wireless communication device 102C to detect motion
or
determine a location of detected motion.
[0033] The wireless signals used for motion detection can include, for
example, a
beacon signal (e.g., Bluetooth Beacons, Wi-Fi Beacons, other wireless beacon
signals),
another standard signal generated for other purposes according to a wireless
network
standard, or non-standard signals (e.g., random signals, reference signals,
etc.)
generated for motion detection or other purposes. In some examples, the
wireless
signals propagate through an object (e.g., a wall) before or after interacting
with a
moving object, which may allow the moving object's movement to be detected
without
an optical line-of-sight between the moving object and the transmission or
receiving
hardware. Based on the received signals, the third wireless communication
device 102C
may generate motion detection data. In some instances, the third wireless
communication device 102C may communicate the motion detection data to another

device or system, such as a security system, that may include a control center
for
monitoring movement within a space, such as a room, building, outdoor area,
etc.
100341 In some implementations, the wireless communication devices 102A, 102B
can be modified to transmit motion probe signals (which may include, e.g., a
reference
signal, beacon signal, or another signal used to probe a space for motion) on
a separate
wireless communication channel (e.g., a frequency channel or coded channel)
from
8

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
wireless network traffic signals. For example, the modulation applied to the
payload of a
motion probe signal and the type of data or data structure in the payload may
be known
by the third wireless communication device 102C, which may reduce the amount
of
processing that the third wireless communication device 102C performs for
motion
sensing. The header may include additional information such as, for example,
an
indication of whether motion was detected by another device in the
communication
system 100, an indication of the modulation type, an identification of the
device
transmitting the signal, etc.
100351 In the example shown in FIG. 1A, the wireless communication system 100
is a
wireless mesh network, with wireless communication links between each of the
respective wireless communication devices 102. In the example shown, the
wireless
communication link between the third wireless communication device 102C and
the
first wireless communication device 102A can be used to probe a first motion
detection
field 110A, the wireless communication link between the third wireless
communication
device 102C and the second wireless communication device 102B can be used to
probe
a second motion detection field 110B, and the wireless communication link
between the
first wireless communication device 102A and the second wireless communication

device 102B can be used to probe a third motion detection field 110C. In some
instances, each wireless communication device 102 detects motion in the motion

detection fields 110 accessed by that device by processing received signals
that are
based on wireless signals transmitted by the wireless communication devices
102
through the motion detection fields 110. For example, when the person 106
shown in
FIG. 1A moves in the first motion detection field 110A and the third motion
detection
field 110C, the wireless communication devices 102 may detect the motion based
on
signals they received that are based on wireless signals transmitted through
the
respective motion detection fields 110. For instance, the first wireless
communication
device 102A can detect motion of the person in both motion detection fields
110A,
110C, the second wireless communication device 102B can detect motion of the
person
106 in the motion detection field 110C, and the third wireless communication
device
102C can detect motion of the person 106 in the motion detection field 110A.
100361 In some instances, the motion detection fields 110 can include, for
example,
air, solid materials, liquids, or another medium through which wireless
electromagnetic
signals may propagate. In the example shown in FIG. 1A, the first motion
detection field
9

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
110A provides a wireless communication channel between the first wireless
communication device 102A and the third wireless communication device 102C,
the
second motion detection field 110B provides a wireless communication channel
between the second wireless communication device 102B and the third wireless
communication device 102C, and the third motion detection field 110C provides
a
wireless communication channel between the first wireless communication device

102A and the second wireless communication device 102B. In some aspects of
operation, wireless signals transmitted on a wireless communication channel
(separate
from or shared with the wireless communication channel for network traffic)
are used
to detect movement of an object in a space. The objects can be any type of
static or
moveable object, and can be living or inanimate. For example, the object can
be a human
(e.g., the person 106 shown in FIG. 1A), an animal, an inorganic object, or
another
device, apparatus, or assembly), an object that defines all or part of the
boundary of a
space (e.g., a wall, door, window, etc.), or another type of object. In some
implementations, motion information from the wireless communication devices
may be
analyzed to determine a location of the detected motion. For example, as
described
further below, one of the wireless communication devices 102 (or another
device
communicably coupled to the devices 102) may determine that the detected
motion is
nearby a particular wireless communication device.
100371 FIG. 1C illustrates example communication paths defining a
communication
link between the wireless communication devices 102A and 102C of FIG. 1A. In
the
example shown, the first wireless communication device 102A includes first
modem
112A, and the third wireless communication device 102C includes third modem
112C.
The example wireless modems 112A and 112C communicate with each other over
multiple communication paths 121-124. The four communication paths 121-124
define
a communication link 126 between the two wireless communication devices 102A
and
102C. Each communication path is defined by a signal hardware path of the
modem
112A and a signal hardware path of the modem 112C. For instance, in the
example
shown, the communication path 121 is defined by the antenna 128A of the modem
112A and the antenna 128C of the modem 112C, the communication path 122 is
defined
by the antenna 128A of the modem 112A and the antenna 130C of the modem 112C,
the
communication path 123 is defined by the antenna 130A of the modem 112A and
the
antenna 128C of the modem 112C, and the communication path 124 is defined by
the

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
antenna 130A of the modem 112A and the antenna 130C of the modem 112C. In some

instances, the modems 112A and 112C may communicate over the various
communication paths 121-124 by transmitting signals from both antennas 128,
130
(e.g., the same signal at each antenna), and the signals may be received by
the other
modem using one or both of the antennas 128, 130 (e.g., depending on
interference in
the respective communication paths). For instance, signals transmitted by
antennas
128A, 130A may only be received at the antenna 128C of the modem 112C, where
large
amounts of interference is present near communication paths 122, 124. In some
implementations, the signal hardware paths include multiple antennas of the
modems.
For instance, a communication path may be defined by multiple antennas at a
first
modem 112A and multiple antennas at a third modem 112C. More particularly,
each
communication path is between a transmitter (e.g., one or more transmit
antennas) of a
first wireless communication device of the pair and a receiver (e.g., one or
more receive
antennas) of a second wireless communication device of the pair. In certain
implementations, a modem 112 includes two transmitters and two receivers,
which
provide four communication paths per modem. In other modem configurations, a
different number of transmitters and receivers could be included, such as two
transmitters and four receivers, which provide eight RF communication paths.
100381 FIG. 2 illustrates an example motion probe signal 202. The example
motion
probe signal 202 can be transmitted, for example, in a wireless communication
system
in order to monitor for motion in a space. In some examples, the motion probe
signal
202 is transmitted in the form of a motion detection signal on a motion
detection
channel in a wireless communication network. In some example, the motion probe

signal 202 includes a motion channel packet. For instance, the motion probe
signal 202
can include binary data that is converted to an analog signal, up-converted to
radio
frequency, and wirelessly transmitted by an antenna.
100391 The motion probe signal 202 shown in FIG. 2 includes control data 204
and a
motion data 206. A motion probe signal 202 may include additional or different

features, and may be formatted in another manner. In the example shown, the
control
data 204 may include the type of control data that would be included in a
conventional
data packet. For instance, the control data 204 may include a preamble (also
called a
header) indicating the type of information contained in the motion probe
signal 202, an
identifier of a wireless device transmitting the motion probe signal 202, a
MAC address
11

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
of a wireless device transmitting the motion probe signal 202, a transmission
power,
etc. The motion data 206 is the payload of the motion probe signal 202. In
some
implementations, the motion data 206 can be or include, for example, a
pseudorandom
code or another type of reference signal. In some implementations, the motion
data 206
can be or include, for example, a beacon signal broadcast by a wireless
network system.
100401 In an example, the motion probe signal 202 is transmitted by a wireless
device
(e.g., the wireless communication device 102A shown in FIG. 1A) and received
at a
motion detection device (e.g., the motion detector device 102C shown in FIG.
1A). In
some cases, the control data 204 changes with each transmission, for example,
to
indicate the time of transmission or updated parameters. The motion data 206
can
remain unchanged in each transmission of the motion probe signal 202. The
motion
detection device can process the received signals based on each transmission
of the
motion probe signal 202, and analyze the motion data 206 for changes. For
instance,
changes in the motion data 206 may indicate movement of an object in a space
accessed
by the wireless transmission of the motion probe signal 202. The motion data
206 can
then be processed, for example, to generate a response to the detected motion.

100411 FIGS. 3A and 3B illustrate example signals communicated between
wireless
communication devices. As shown in FIGS. 3A and 3B, multiple example paths of
the
wireless signals transmitted from the first wireless communication device 304A
are
illustrated by dashed lines. Along a first signal path 316, the wireless
signal is
transmitted from the first wireless communication device 304A and reflected
off the
first wall 302A toward the second wireless communication device 304B. Along a
second
signal path 318, the wireless signal is transmitted from the first wireless
communication device 304A and reflected off the second wall 302B and the first
wall
302A toward the third wireless communication device 304C. Along a third signal
path
320, the wireless signal is transmitted from the first wireless communication
device
304A and reflected off the second wall 302B toward the third wireless
communication
device 304C. Along a fourth signal path 322, the wireless signal is
transmitted from the
first wireless communication device 304A and reflected off the third wall 202C
toward
the second wireless communication device 304B.
100421 In FIG. 3A, along a fifth signal path 324A, the wireless signal is
transmitted
from the first wireless communication device 304A and reflected off the object
at the
first position 314A toward the third wireless communication device 304C.
Between
12

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
FIGS. 3A and 3B, a surface of the object moves from the first position 314A to
a second
position 314B in the space 300 (e.g., some distance away from the first
position 314A).
In FIG. 3B, along a sixth signal path 324B, the wireless signal is transmitted
from the
first wireless communication device 304A and reflected off the object at the
second
position 314B toward the third wireless communication device 304C. The sixth
signal
path 324B depicted in FIG. 3B is longer than the fifth signal path 324A
depicted in FIG.
3A due to the movement of the object from the first position 314A to the
second
position 314B. In some examples, a signal path can be added, removed, or
otherwise
modified due to movement of an object in a space.
100431 In the example shown in FIGS. 3A and 3B, the first wireless
communication
device 304A can repeatedly transmit a wireless signal. In particular, FIG. 3A
shows the
wireless signal being transmitted from the first wireless communication device
304A at
a first time, and FIG. 3B shows the same wireless signal being transmitted
from the first
wireless communication device 304A at a second, later time. The transmitted
signal can
be transmitted continuously, periodically, at random or intermittent times or
the like, or
a combination thereof The transmitted signal can have a number of frequency
components in a frequency bandwidth. The transmitted signal can be transmitted
from
the first wireless communication device 304A in an omnidirectional manner, in
a
directional manner or otherwise. In the example shown, the wireless signals
traverse
multiple respective paths in the space 300, and the signal along each path may
become
attenuated due to path losses, scattering, reflection, or the like and may
have a phase or
frequency offset.
100441 As shown in FIGS. 3A and 3B, the signals from various paths 316, 318,
320,
322, 324A, and 324B combine at the third wireless communication device 304C
and the
second wireless communication device 304B to form received signals. Because of
the
effects of the multiple paths in the space 300 on the transmitted signal, the
space 300
may be represented as a transfer function (e.g., a filter) in which the
transmitted signal
is input and the received signal is output. When an object moves in the space
300, the
attenuation or phase offset affected upon a signal in a signal path can
change, and hence,
the transfer function of the space 300 can change. Assuming the same wireless
signal is
transmitted from the first wireless communication device 304A, if the transfer
function
of the space 300 changes, the output of that transfer function¨the received
signal¨will
13

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
also change. A change in the received signal can be used to detect movement of
an
object.
100451 Mathematically, a transmitted signal f (t) transmitted from the first
wireless
communication device 304A may be described according to Equation (1):
At) = cnei wnt (1)
n=- co
where con represents the frequency of nth frequency component of the
transmitted
signal, cn represents the complex coefficient of the nth frequency component,
and t
represents time. With the transmitted signal f (t) being transmitted from the
first
wireless communication device 304A, an output signal rk (t) from a path k may
be
described according to Equation (2):
rk(t) = ,
an /cc ne (wnt+On,k) (2)
n= -00
where an,k represents an attenuation factor (or channel response; e.g., due to
scattering,
reflection, and path losses) for the nth frequency component along path k, and
On,k
represents the phase of the signal for nth frequency component along path k.
Then, the
received signal R at a wireless communication device can be described as the
summation of all output signals rk(t) from all paths to the wireless
communication
device, which is shown in Equation (3):
R =Irk(t) (3)
Substituting Equation (2) into Equation (3) renders the following Equation
(4):
R = (an,kei mk))Cnei (4)
k n¨co
100461 The received signal R at a wireless communication device can then be
analyzed. The received signal R at a wireless communication device can be
transformed
to the frequency domain, for example, using a Fast Fourier Transform (FFT) or
another
type of algorithm. The transformed signal can represent the received signal R
as a series
of n complex values, one for each of the respective frequency components (at
the n
frequencies con). For a frequency component at frequency con, a complex value
Hn may
be represented as follows in Equation (5):
14

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
Hn =1CnamkeOn =k . (5)
[0047] The complex value Hn for a given frequency component con indicates a
relative
magnitude and phase offset of the received signal at that frequency component
con.
When an object moves in the space, the complex value Hn changes due to the
channel
response aim, of the space changing. Accordingly, a change detected in the
channel
response can be indicative of movement of an object within the communication
channel.
In some instances, noise, interference or other phenomena can influence the
channel
response detected by the receiver, and the motion detection system can reduce
or
isolate such influences to improve the accuracy and quality of motion
detection
capabilities.
[0048] In some implementations, the channel response can be represented as:
hch = an,k = (6)
k n= - co
In some instances, the channel response ha, for a space can be determined, for
example,
based on the mathematical theory of estimation. For instance, a reference
signal Ref can
be modified with candidate channel responses (hcn), and then a maximum
likelihood
approach can be used to select the candidate channel which gives best match to
the
received signal (k.nd). In some cases, an estimated received signal (r?cnd) is
obtained
from the convolution of the reference signal (Ref) with the candidate channel
responses
(hcn), and then the channel coefficients of the channel response (hcn) are
varied to
minimize the squared error of the estimated received signal (r?c,d). This can
be
mathematically illustrated as:
Rcvd = Refethch = Ref (n ¨ k)heh(k) (7)
k=-m
with the optimization criterion
min (Rcvd Rcvd)2= (8)
hch
The minimizing, or optimizing, process can utilize an adaptive filtering
technique, such
as Least Mean Squares (LMS), Recursive Least Squares (RLS), Batch Least
Squares
(BLS), etc. The channel response can be a Finite Impulse Response (FIR)
filter, Infinite
Impulse Response (IIR) filter, or the like.

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
[0049] As shown in the equation above, the received signal can be considered
as a
convolution of the reference signal and the channel response. The convolution
operation means that the channel coefficients possess a degree of correlation
with each
of the delayed replicas of the reference signal. The convolution operation as
shown in
the equation above, therefore shows that the received signal appears at
different delay
points, each delayed replica being weighted by the channel coefficient. In
some
instances, the channel response ha, for a space can be determined based on
channel
state information (C SI) determined by the modem or other component of the
wireless
communication device receiving the wireless signals.
[0050] In some aspects, a signal quality metric may be determined for received

signals based on the channel response. For example, a determined channel
response
(k.h) for a space may be applied to a reference signal (Ref) to yield an
estimated
received signal (Rõd), which is an estimation of what the received signal
should be
based on the channel response (e.g., based on convolution of the reference
signal (Ref)
with the channel response (k.h) as described above). The estimated received
signal
(r?õd) and the actual received signal (Rõd) may be used to compute a signal
quality
metric. In some examples, for instance, the signal quality metric is based on
(e.g., is set
equal to, is computed from, is representative of, etc.) a value Q that is
determined by
computing the dot product of the actual received signal (Rõd) and the
difference
between the estimated received signal (r?õd) and the actual received signal
(Rõd), e.g.:
Q = Rcvd = (Rcvd Rcvd). (9)
[0051] In some cases, received signals may be "rejected" by a wireless
communication device. For example, in some implementations, a motion detection

process may include quality criterion for signals. Received signals that do
not meet the
quality criterion may be rejected (e.g., discarded or ignored) and not
considered in
determining whether motion has occurred in the space 300. The signals may be
accepted or rejected as inputs to the motion detection process based on the
signal
quality metric (e.g., the value Q described by Equation (9)). For instance, in
some cases,
motion is detected using only a subset of received signals that have values Q
above a
certain threshold.
100521 FIGS. 4A and 4B illustrate an example wireless communication system
400. In
the example shown, the example wireless communication system 400 is a wireless
16

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
mesh network that includes multiple remote sensor devices 402A, 402B, 402C,
402D,
and a hub device 404, and each device can communicate wirelessly with one or
more of
the other devices in the system 400. In some instances, the wireless
communication
system 400 can be used within the wireless communication system 100 of FIG.
1A. The
remote sensor devices 402 and hub device 404 in FIGS. 4A and 4B can be
implemented
in the same or similar manner as the wireless communication devices 102A,
102B, and
102C of FIG. 1A, or the wireless communication devices 302 of FIGS. 3A and 3B.

Arrangements other than that shown in FIGS. 4A and 4B are possible. In some
implementations, any one of the remote sensor devices 402 can be configured to

perform operations of the hub device 404. In some instances, only one device
402 or
404 performs operations of the hub device 404 described herein.
100531 In the examples shown in FIGS. 4A and 4B, a beacon wireless signal 406
is
transmitted by the hub device 404 (as shown in FIG. 4A), and in response to
receiving
the beacon wireless signal 406, each of the remote sensor devices 402
transmits a
motion probe signal (the motion probe signals 408, 410, 412, 414 as shown in
FIG. 4B).
When an object 416 (e.g., person) moves within the space accessed by the
motion probe
signals, as shown in FIG. 4B, a signal path of the motion probe signals can be
added,
removed, or otherwise modified due to the movement as described above. For
example,
the motion probe signals 408, 410, 412, 414 shown in FIG. 4B may experience
attenuation, frequency shifts, phase shifts, or other effects through their
respective
paths and may have portions that propagate in another direction based on
interactions
with the moving object. The remote sensor devices 402 and/or the hub device
404 can
monitor for these changes (e.g., by analyzing the channel response as
described above)
to detect the motion of the object 416 in the space, and the hub device 404
can detect a
relative location of the object 416 in the space (e.g., based on motion
indicator values
for the remote sensor devices 402 and/or the hub device 404, as described
below).
100541 As shown in FIG. 4A, the hub device 404 transmits an example beacon
wireless signal 406 in an omnidirectional manner. The beacon wireless signal
406 can
be transmitted in another manner (e.g., in another beam pattern, such as a non-

omnidirectional pattern). For example, the hub 404 can broadcast the beacon
wireless
signal 406. The propagation of the beacon wireless signal 406 across distances
is
illustrated by dashed-line, concentric circles. The remote sensor devices 402
receive the
beacon wireless signal 406 and perform one or more operations based on the
received
17

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
beacon wireless signal 406. In some instances, the hub 404 transmits beacons
sequentially, namely, transmitting the beacon wireless signal 406 at a first
time, and
transmitting a subsequent beacon wireless signal a second, later time. The
beacon
wireless signals 406 transmitted by the hub device 404 may form a series of
wireless
signals. The hub device 404 can transmit beacon wireless signals 406
continuously,
periodically, at random or intermittent times or the like, or a combination
thereof In
certain implementations, for example, the hub device 404 repeatedly transmits
the
beacon wireless signal 406. In certain implementations, the beacon wireless
signal 406
indicates an instruction to the remote sensor devices 402 to transmit a motion
probe
signal.
[0055] In some implementations, the beacon wireless signal 406 includes
synchronization information that controls a timing of when the remote sensor
devices
transmit the motion probe signals 408, 410, 412, 414. For example, the
synchronization
information can indicate an instruction to the remote sensor devices 402 to
simultaneously transmit the motion probe signals 408, 410, 412, 414 at a
specified
point in time. As another example, the synchronization information can
indicate an
instruction to the remote sensor devices to transmit the motion probe signals
408, 410,
412, 414 at specified intervals after receiving the beacon wireless signal
406.
[0056] In some implementations, the beacon wireless signal 406 includes a
sequence
value. For example, the hub device 404 can configure the header (e.g., control
data) of
the beacon wireless signal 406 to include the sequence value. The header of
the beacon
wireless signal 406 may also include an identification of the transmitting
remote sensor
device 402. The hub device 404 may send subsequent beacon wireless signals 406
with
incremented or decremented sequence values. To obtain each sequence value, the
hub
device 404 can sequentially select a different value from a set of values, or
the hub 404
can generate different values in a sequential order. For example, a beacon
wireless
signal transmitted by the hub device 404 at a first time (to) can include
sequence value
999; and at a second, later time (ti), the hub device 404 can transmit a
beacon wireless
signal that includes the next sequence value 1000, and so forth, as shown in
FIG. SA. In
some instances, the sequence value represents a time position of the wireless
signal
within the series of beacon wireless signals 406. The sequence values may be
selected
and modified in subsequent transmissions in another manner.
18

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
100571 FIG. 4B illustrates example wireless motion probe signals transmitted
in the
wireless communication system 400 of FIG. 4A. In the example shown, each
remote
sensor device 402 transmits a motion probe signal in response to receiving a
beacon
wireless signal 406 (e.g., from the hub device 404, as shown in FIG. 4A). More

particularly, in response to receiving the beacon wireless signal 406, the
remote sensor
device 402A transmits a first motion probe signal 408, the remote sensor
device 402B
transmits a second motion probe signal 410, the remote sensor device transmits
a third
motion probe signal 412, and the remote sensor device 402D transmits a fourth
motion
probe signal 414. In the example shown, the remote sensor devices 402 transmit
the
respective motion probe signals 408, 410, 412, 414 in a directional manner.
The
propagation of the motion probe signals 408, 410, 412, 414 across distances is

illustrated in FIG. 4B by dashed-line, concentric circular arcs. The remote
sensor devices
may transmit the motion probe signals in another manner (e.g., in another beam

pattern, such as a non-omnidirectional pattern). In some instances, the hub
device 404
transmits motion probe signals in the same manner as the remote sensor devices
402.
100581 In the example shown in FIGS. 4A and 4B, the remote sensor device 402A
receives the beacon wireless signal 406, and in response, performs one or more

operations based on the received signal, such as, for example, updating an
internal
sequence value. For instance, the remote sensor device 402A may be configured
to store
an internal sequence value, and update the internal sequence value with the
sequence
value obtained from the most recently received beacon wireless signal 406. The
remote
sensor device 402A transmits the first motion probe signal 408 with a sequence
value
(e.g., in a header) that is the same as the stored internal sequence value.
The remote
sensor device 402A may also transmit the first motion probe signal 408 with an

identifier indicating that the device 402A sent the signal 408. The other
remote sensor
devices 402B-402D and the hub device 404 can then receive signals based on the
first
motion probe signal 408 and perform one or more operations thereafter (e.g.,
detect
motion, transmit motion information, or other operations). The other remote
sensor
devices 402B-402D may operate in the same or similar manner as described above
with
respect to the remote sensor device 402A, or in another manner.
100591 The remote sensor devices 402 and the hub device 404 can detect motion
of
the object 416 based on the motion probe signals transmitted by the remote
sensor
devices. For example, the remote sensor devices may analyze changes in the
channel
19

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
response (e.g., as described above) to detect whether motion has occurred in
the space
accessed by the motion probe signals. In some instances, a specified number of
signals
(a "motion calculation quantity") is used to detect whether motion has
occurred. If
motion is detected in the space, then a motion indicator value (MIV) is
computed by the
device. The MIV represents a degree of motion detected by the device based on
the
wireless signals transmitted or received by the device. For instance, higher
MIVs can
indicate a high level of channel perturbation (due to the motion detected),
while lower
MIVs can indicate lower levels of channel perturbation. Higher levels of
channel
perturbation may indicate motion in close proximity to the device. The MIVs
may
include aggregate MIVs (representing a degree of motion detected in the
aggregate by
the respective device 402), link MIVs (representing a degree of motion
detected on
particular communication links between respective devices 402), path MIVs
(representing a degree of motion detected on particular communication paths
between
hardware signal paths of respective devices 402), or a combination thereof
Example
MIVs are discussed below with respect to FIGS. SC-SD.
100601 The hub device 404 can then determine a relative location of the
detected
motion of the object 416 based on the MIVs (e.g., by performing one or more of
the
operations of the example process 600 of FIG. 6). In some implementations, for
instance,
the remote sensor devices 402 transmit (e.g., periodically or after motion has
been
detected) motion information to the hub device 404 that includes the MIVs
computed by
the respective remote sensor devices 402. The motion information may also
include, in
some instances, other information related to the motion detection performed by
the
respective remote sensor devices 402. For example, the motion information may
include signal quality metric values (e.g., for the device in the aggregate or
for
respective links between the device and other devices), sequence values of the
signals
used to detect the motion, or other information used by the devices 402 to
detect
motion. The hub device 404 then uses the motion information from the remote
sensor
devices 402 and its own motion information (since the hub device 404 also
detects
motion based on the motion probe signals) to determine the location of the
detected
motion (e.g., the location of the object 416). In some instances, the hub
device 404 may
weight one or more of the data in the motion information (e.g., the MIVs)
before using
the data to determine the location of the detected motion.

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
100611 In some implementations, the detection of motion, the determination of
the
location of the detected motion, or both can be performed by another device.
For
example, in some instances, a remote server communicably coupled to the
wireless
communication system 400 may receive the motion information from the devices
402,
404 (instead of the hub device 404 as described above) and may determine a
location of
the detected motion based on the motion information.
100621 FIG. 5A is a table 510 of example sequence values indicated by wireless

signals transmitted and received in the wireless communication system 400 of
FIGS. 4A
and 4B according to a scenario of one-hundred percent (100%) throughputs. In
the
example shown, the hub device 404 transmits ten (10) consecutive beacon
wireless
signals (Beacon No. 0 through Beacon No. 9), each at one of ten (10)
consecutive points
in time, from a first time (to) through a tenth time (to). The hub device 404
configures
each of the ten (10) consecutive beacon wireless signals (Beacon No. 0 through
Beacon
No. 9) to include a respective sequence value obtained from a set of values
{999, 1000,
..., 1007, 1008}. In the example shown, the sequential order of sequence
values is
incremented by an integer value of one (1); however, the sequence values can
be
incremented, decremented, or otherwise changed in another manner, such as, for

example, by being incremented or decremented by an integer of two (2). In some

instances, the sequence values include alphabetical characters, and the
sequence values
are incremented alphabetically (e.g., A through Z, AA through ZZ, and so
forth).
100631 The ten (10) consecutive beacon wireless signals (Beacon No. 0 through
Beacon No. 9) are received by each remote sensor device 402, and each remote
sensor
device 402 transmits a motion probe signal in response. More particularly, the
remote
sensor devices 402 configure and transmit ten (10) consecutive motion probe
signals
(e.g., motion probe signals 408, 410, 4121, 414) that include a respective
sequence
value {999, 1000, ..., 1007, 1008} received via the ten (10) consecutive
beacon wireless
signals.
100641 FIG. 5B is a table 520 of example sequence values indicated by motion
probe
signals received in the wireless communication system 400 of FIGS. 4A and 4B
according to a scenario of various throughputs. More particularly, the table
520 shows
the ten (10 most recently-received sequence values in motion probe signals on
the
respective communication links. As in the previous example, the hub device 404

configures each consecutive beacon wireless signal with a sequential sequence
value
21

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
incremented by an integer value of one (1). When interference is present or a
link
between devices is otherwise poor (e.g., large distance between the devices),
only
certain beacon wireless signals are received by the remote sensor devices.
Thus, only
those certain sequence values received by the remote sensor devices are
transmitted
out in motion probe signals, and, as shown in FIG. 5B, the motion probe
signals received
on the various communication links will have varying ranges of sequence
values. These
sequence values can indicate a link signal quality, and may be used, for
example, to
weight the MIV for the respective link. For example, where the link has a
large range of
sequence values or older sequence values relative to the other links (e.g.,
like Link IDs 1
and 7 in FIG. 5B), the signal quality may be poor and the data used to detect
motion may
be old (relative to the other links). Thus, motion detected on these links
(the MIVs for
the link) may be weighted down or not considered when determining a location
of
detected motion.
100651 In the table 520, the identification of each communication link
corresponds to
device identifications of the source and destination devices that communicate
via that
communication link. The remote sensor devices 402A, 402B, 402C, 402D and the
hub
device 404 have respective device IDs A, B, C, D, and H. In the example shown,
the first
communication link (Link ID 1) corresponds to source device ID A, and
destination
device ID H. The second communication link (Link ID 2) corresponds to source
device
ID B, and destination device ID H. The third communication link (Link ID 3)
corresponds
to source device ID C, and destination device ID H. The fourth communication
link (Link
ID 4) corresponds to source device ID D, and destination device ID H. The
fifth
communication link (Link ID 5) corresponds to source device ID B, and
destination
device ID A. The sixth communication link (Link ID 6) corresponds to source
device ID
C, and destination device ID A. The seventh communication link (Link ID 7)
corresponds
to source device ID D, and destination device ID A. The eighth communication
link (Link
ID 8) corresponds to source device ID C, and destination device ID B. The
ninth
communication link (Link ID 9) corresponds to source device ID D, and
destination
device ID B. The tenth communication link (Link ID 10) corresponds to source
device ID
D, and destination device ID C. In the example shown, the reciprocal links
between
devices (e.g., the reciprocal link for Link ID 10, where the source is device
ID C and the
destination is device ID D) are not shown to avoid redundancy.
22

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
100661 FIG. 5C is a table 530 of example motion information for communication
links
in the wireless communication system 400 of FIGS. 4A and 4B. In the example
shown,
the table 530 includes link MIVs that correspond to respective communication
links and
indicate an amount of channel perturbation from the detected motion between
the
source and destination devices of the communication link. A higher MIV
indicates more
channel perturbation between source and destination devices of a communication
link,
and a lower motion value indicates less channel perturbation between the pair
of
source and destination devices. The example MIVs in the table 530 are
normalized
between zero (0) to one hundred (100). The table 530 also includes signal
quality
metric values for the respective communication links, and a range of sequence
values of
the motion probe signals used to detect motion (e.g., the data used to
generate the MIV
shown in the table 530). Although illustrated as including motion information
for
respective communication links, the table 530 may, in some implementations,
include
motion information for respective communication paths between the various
devices.
100671 The signal quality metric values in the table 530 indicate a relative
quality of
communications on each respective communication link. The signal quality
metric value
can be based on multiple factors, including a throughput between the pair of
wireless
communication devices corresponding to the communication link (as indicated by
the
sequence range for the communication link in the table 530), a signal to noise
ratio
(SNR), a number of dropped packets, or a combination thereof. In the example
shown,
the signal quality metric is computed to be within a range of zero (0) to one
hundred
(100). In some instances, the signal quality metric is based on (e.g., equal
to) the value Q
described above in Equation (9). A higher signal quality metric indicates a
higher
quality channel environment of the communication link. For instance, in the
example
shown, Link IDs 1 and 7 both have relatively low signal quality metric values
of ten (10)
based at least in part on the low throughput of these communication links.
100681 The sequence range in the table 530 indicate a time period over which
motion
is detected per communication link. As an example, the motion probe signals
used to
detect motion on Link ID 1 are collected over a longer period of time based on
a larger
span of the sequence range from 905-995 compared to the shorter sequence range
from
999-1008 for Link ID 2. In some instances, motion is detected using a
specified number
of data packets, so a larger sequence range indicate a longer period of time
needed to
gather the specified number of packets for motion detection. With poor links
(such as
23

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
Link ID 1), it may take longer to collect the specified number of packets, and
thus, the
motion detection may be more unreliable as compared to a link (such as Link ID
2)
whose data packets were more recently received. Thus, in some instances, the
MIVs may
be weighted based on the sequence range associated with the MIV. A
corresponding
weighted MIV can be generated by scaling an unweighted MIV by the determined
weight.
100691 The hub device 404 can determine a weight based on a time factor (e.g.,
such
as the sequence range), a signal quality metric value, or another factor. For
example, the
hub device 404 can select the maximum sequence value in the Sequence Range
column
as a temporal reference value (also referred to as "reference sequence value")
and
weight the MIV based on the reference sequence value. In the example shown,
the hub
device 404 selects a value of 1008 as the reference sequence value, since that
is the
most recently-received sequence value. The hub 404 can generate a weight based
on the
reference sequence value in various ways. For instance, in the example shown,
a binary
weighting (e.g., weighting values of zero (0) or one (1) are used) is applied
based on
whether the maximum sequence value for the communication link is within a
threshold
sequence range of the reference sequence value. Thus, in the example shown,
the MIVs
for Link IDs 1 and 7 are weighted to zero (0) because their maximum sequence
value is
not within 10 of the reference sequence value of 1008. Another weighting
technique can
be implemented instead of the binary technique shown. For instance, a gradual
weighting method that applies a weighting factor between zero (0) and one (1)
can be
used. In some instances, for example, a communication link that has a maximum
sequence value (e.g., 900) far off (e.g., outside a threshold sequence range)
from the
reference sequence value (1008 in the example shown) can contribute some
portion of
its MIV to the location determination, such as by applying a weight that is
greater than
zero.
100701 In some implementations, a neural network is trained to determine the
location of detected motion based on information provided by the hub device
404. For
instance, the hub device 404 can provide the information in the table 530 as
an input to
a trained neural network, and the neural network can provide a determination
of the
location of the detected motion. The neural network can be configured to
generate a
weighting function through a machine-learning process, wherein input data to
the
neural network includes a range of sequence values and corresponding motion
values.
24

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
100711 FIG. 5D is a table 540 of example aggregate motion indicator values and

confidence factors corresponding to wireless communication devices in the
wireless
communication network 400 of FIGS. 4A and 4B. In particular, the table 540
includes
confidence factors that are Peak to Average Ratios of the MIVs (with or
without
weighting applied). The aggregate MIVs are based on the link MIVs shown in the
table
530. In some instances, the aggregate MIVs can be computed according to the
following
equation:
motion(device) = motion(link)[linksource = devicel linkdest = device]
(10)
links
100721 For instance, in the example shown for Link ID 1, the motion indicator
value
(motion(link)) indicates a degree of motion detected between the remote sensor

device 402A (linksource) and the hub device 404 (linkdest). A higher aggregate
MIV for a
device may indicate that the detected motion is near that device, while a
lower
aggregate MIV may indicate that the detected motion is further away from the
device.
The hub device 404 can then compare the aggregate MIVs for the respective
devices to
determine a location of detected motion. For instance, in the example shown,
the hub
device 404 can determine that the detected motion is nearest to device ID A
since that
devices has the highest aggregate MIV (in both the weighted and non-weighted
cases).
In some instances, the weighted MIVs may be used to determine the location of
the
detected motion. In some implementations, the hub device 404 determines a peak
to
average ratio of the aggregate MIVs (weighted or unweighted). The peak to
average
ratio can be used as a confidence factor, which can be represented as:
motion(device) (11)
peakratio(device) = ________________________
motionaverage
100731 The confidence factor can then be used to determine the location of the

detected motion. For instance, in the example shown, the hub device 404 can
determine
that the detected motion is nearest device ID A since it is the device with
the highest
confidence factor (peak to average ratio; in both the weighted and unweighted
cases). In
some cases, such as where the number of users is less than the number of
remote
sensor devices 402, the hub device 404 can extend the confidence factor to
determine
that there is motion at the corresponding devices. For example, if the
wireless
communication system 400 includes 5 total devices and 1 user, then the
wireless
communication device that has the highest peak to average ratio that is above
a

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
threshold peak to average ratio value would indicate the likelihood that the
user is near
the wireless communication device that has the highest confidence factor.
Similarly, if
wireless communication system 400 includes 5 total devices and 2 users, then
the top
two confidence factors above a certain value may indicate the likelihood the
users are
near the two devices that have the two highest confidence factors.
100741 In certain implementations, the hub device 404 can perform time
averaged
sampling over a period of time to smooth out the aggregate MIVs of
communication
links based on the signal quality metric values. In some instances, the motion

information can be further aggregated into snapshots to indicate as a
percentage which
wireless communication device detected motion for various time periods. For a
given
period, the freshness of the motion information (e.g., how recently the motion
probe
signals were received, based on the sequence values) can be used to increment
a
counter for the determined location of the detected motion based on wireless
communication device (e.g., device ID). If, during the sample period, the
freshness of the
data is below a threshold (e.g., the most recent sequence value is less than a
particular
reference value), then the counter is not incremented. Then, over a certain
time period,
the sum of each device's counter can be used (e.g., as a percentage) to
determine the
most active wireless communication device (the device closest to the detected
motion)
for the time period.
100751 In some implementations, the location of the detected motion can be
indicated
on user equipment (e.g., smartphone, speaker) or an electronic display device
(e.g.,
television, monitor, screen) to display or present the determined location of
an object
(i.e., person). The location of detected motion can be presented, for example,
to a user in
an interface (e.g., visual, audio, audiovisual display) highlighting the
device 402 or 404
where motion was last determined to occur.
100761 FIG. 6 illustrates a process 600 of determining a location of detected
motion in
a space. In some instances, the process 600 may be implemented to determine a
location of detected motion based on motion indicator values for respective
devices,
communication links, communication paths, or a combination thereof Operations
in the
example process 600 may be performed by a data processing apparatus (e.g., the

processor 114 of the example wireless communication device 102C in FIG. 1A) to

determine the location of the detected motion based on signals received at
various
wireless communication devices (e.g., the hub device 404 of FIGS. 4A and 4B
may
26

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
determine the location of the detected motion of the object 416 based on
signals
received at the remote sensor devices 402 and the hub device 404). The example

process 600 may be performed by another type of device. For instance,
operations of
the process 600 may be performed by a system other than the wireless
communication
devices that receive the signals (e.g., a computer system connected to the
wireless
communication system 400 of FIGS. 4A and 4B that aggregates and analyzes
motion
indicator values).
100771 The example process 600 may include additional or different operations,
and
the operations may be performed in the order shown or in another order. In
some cases,
one or more of the operations shown in FIG. 6 are implemented as processes
that
include multiple operations, sub-processes or other types of routines. In some
cases,
operations can be combined, performed in another order, performed in parallel,

iterated, or otherwise repeated or performed another manner.
100781 At 602, wireless signals are transmitted through a space. The wireless
signals
may be motion probe signals configured to probe the space for motion. The
motion
probe signals may be formatted similar to the motion probe signal 202 of FIG.
2, or in
another manner. Referring to the example shown in FIGS. 4A and 4B, the remote
sensor
devices 402 transmit motion probe signals in response to beacon wireless
signals
transmitted by the hub device 404. In certain implementations, the beacon
wireless
signal includes a sequence value that indicates a point in time that the
beacon wireless
signal is transmitted, and the remote sensor devices include the sequence
value in the
motion probe signal (e.g., in the control data 204) transmitted in response to
the beacon
wireless signal.
100791 At 604, motion is detected based on the wireless signals transmitted at
602.
Motion may be detected at one or more of the wireless communication devices
that
receive the signals transmitted at 602. For instance, referring to the example
shown in
FIGS. 4A and 4B, each of the remote sensor devices 402 and the hub device 404
can
execute a motion detection process to detect motion of the object 416. The
motion
detection process may detect motion of the object 416 based on the set of
signals
received by the respective wireless communication device at 602. In some
instances, the
motion detection process includes a comparison of signals received over a
period of
time. For example, motion may be detected based on a detected change in a
frequency
27

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
response of the signals received at 602, or based upon a detected change in
the channel
response for the space (e.g., based on channel state information (CSI)).
100801 At 606, motion indicator values are computed for respective
communication
links. The motion indicator values may indicate a relative degree of motion
detected on
the communication link. For instance, referring to the example shown in FIG.
5C, the
motion indicator values in the fourth column of the table 530 indicate a
degree of
motion detected by one or both of the devices indicated in the second and
third columns
on the respective communication link between those devices. The motion
indicator
values may be computed based on an amount of perturbation observed in the
channel
response for the communication link. In some instances, the motion indicator
values are
normalized. For example, the motion indicator values in the table 530 of FIG.
5C are
values normalized between zero (0) and one hundred (100).
100811 At 608, time factors are computed for respective communication links.
The
time factors for an individual communication link may be: (i) range of
sequence values
included in the motion probe signals used to detect motion on that
communication link,
(ii) a set (e.g., all) of the sequence values included in the motion probe
signals used to
detect motion on that communication link, (iii) the minimum or maximum
sequence
value in the set of sequence values included in the motion probe signals used
to detect
motion on that communication link, or (iv) another indicator of a time period
over
which motion probe signals are obtained to detect motion. In some
implementations,
the time factor for each communication link includes a value based on one or
more of
the aforementioned examples. For example, the time factor may be a weighting
factor
that is based on the maximum or minimum sequence values in the set of motion
probe
signals used to detect motion.
100821 At 610, the motion indicator values are processed. The motion indicator

values may be processed by a designated hub device (e.g., the hub device 404
in the
example shown in FIGS. 4A and 4B), or by another system communicably coupled
to the
devices transmitting or sending motion probe signals. In certain
implementations,
processing the motion indicator values for the respective communication links
includes
computing an aggregate motion indicator value for the wireless communication
devices.
Computing the aggregate motion indicator values may include, in some
instances,
computing a sum of each link motion indicator value associated with the
wireless
communication device. For instance, referring to the example shown in FIGS. 5C-
5D, the
28

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
values in the second column of table 540 include sums of the link motion
indicator
values shown in table 530. The summed link motion indicator values may be used
as the
aggregate motion indicator values at 612 to determine a location of detected
motion in
some cases.
100831 In certain implementations, computing the aggregate motion indicator
values
includes computing a peak to average ratio of the summed link motion indicator
values
for each wireless communication device. For instance, referring to the example
shown
in FIGS. 5C-5D, the values in the third column of table 540 include peak to
average ratios
for the summed link motion indicator values shown in table 530. The peak to
average
ratios may be used as the aggregate motion indicator values at 612 to
determine a
location of detected motion in some cases. In some instances, the peak to
average ratios
may be used as confidence factors as described above.
100841 In some implementations, processing the motion indicator values for the

respective communication links includes weighting (e.g., using a binary
weighting, a
gradual weighting, or a weighting scheme determined by a neural network) the
link
motion indicator values. In some instances, the weighting is based on the time
factors
computed at 608. For example. The same sum and peak to average values as
described
above can then be computed based on the weighted motion indicator values, and
the
computed values can be used as the aggregate motion indicator values at 612 to

determine a location of detected motion.
100851 At 612, a location of detected motion is determined. The location of
the
detected motion can be determined as a likelihood that the motion of an object
is near
one or more of the wireless communication devices. In some instances, the
location is
determined based on (i) the highest aggregate motion indicator value based on
unweighted link motion indicator values; (ii) the highest aggregate motion
indicator
value based on weighted link motion indicator values; (iii) the highest
confidence factor
(e.g., peak to average ratio); or (iv) confidence factors that are greater
than a threshold
value. In some implementations, the determined location is with respect to one
of the
wireless communication devices. For instance, referring to the example shown
in FIGS.
5C-5D, the determined location may be indicated with respect to Device ID A
(e.g.,
"Detected motion near Device ID A") based on Device ID A having the highest
sum of
link motion indicator values or highest peak to average ratio of all the
devices. In some
implementations, the determined location is with respect to multiple wireless
29

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
communication devices. For instance, referring to the example shown in FIGS.
5C-5D,
the determined location may be indicated with respect to Device IDs A and B
(e.g.,
"Detected motion near Device IDs A and B") based on those devices having peak
to
average ratios (in the weighted scenario) greater than one (1).
100861 Although this disclosure is described with reference to motion values
determined per communication link (e.g., communication link 126 in FIG. 1C),
the
process 600 of FIG. 6 can be implemented on a per communication path basis
(e.g., the
communication path 121-124 in FIG. 1C). In some instances, this may scale the
number
of inputs into the motion localization process described above. For example,
in some
implementations, the motion indicator values are computed for respective
communication paths. For instance, assuming that each device indicated in the
table
530 of FIG. 5C has two transmit and two receive antennas, motion indicator
values may
be computed for each of the four communication paths between the respective
antennas
of the devices. In some cases, the motion indicator values for the
communication link
may be based on the motion indicator values for the respective communication
paths of
the link. In some instances, the motion indicator values for the respective
communication paths can be weighted based on a signal quality metric value for
the
communication path, and the weighted values for the communication paths can be
used
to determine the motion indicator values for the communication link. In some
cases, the
motion indicator values for the communication paths can be used in the same
manner
as described herein with respect to the use of motion indicator values for the

communication links (e.g., the path motion indicator values may be used at 610
to
compute the aggregate motion indicator values for the communication devices
instead
of the link motion indicator values). Time factors may also be computed for
each
respective communication path in the same manner as described above for the
communication links. In some instances, the time factors may be used to
compute the
time factors for the respective communication links, or may be used in lieu of
the time
factors for the respective communication links (e.g., the path time factors
may be used
at 610 instead of the link time factors).
100871 Some of the subject matter and operations described in this
specification can
be implemented in digital electronic circuitry, or in computer software,
firmware, or
hardware, including the structures disclosed in this specification and their
structural
equivalents, or in combinations of one or more of them. Some of the subject
matter

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
described in this specification can be implemented as one or more computer
programs,
i.e., one or more modules of computer program instructions, encoded on a
computer
storage medium for execution by, or to control the operation of, data-
processing
apparatus. A computer storage medium can be, or can be included in, a computer-

readable storage device, a computer-readable storage substrate, a random or
serial
access memory array or device, or a combination of one or more of them.
Moreover,
while a computer storage medium is not a propagated signal, a computer storage

medium can be a source or destination of computer program instructions encoded
in an
artificially generated propagated signal. The computer storage medium can also
be, or
be included in, one or more separate physical components or media (e.g.,
multiple CDs,
disks, or other storage devices).
100881 Some of the operations described in this specification can be
implemented as
operations performed by a data processing apparatus on data stored on one or
more
computer-readable storage devices or received from other sources.
100891 The term "data processing apparatus" encompasses all kinds of
apparatus,
devices, and machines for processing data, including by way of example a
programmable processor, a computer, a system on a chip, or multiple ones, or
combinations, of the foregoing. The apparatus can include special purpose
logic
circuitry, e.g., an FPGA (field programmable gate array) or an ASIC
(application specific
integrated circuit). The apparatus can also include, in addition to hardware,
code that
creates an execution environment for the computer program in question, e.g.,
code that
constitutes processor firmware, a protocol stack, a database management
system, an
operating system, a cross-platform runtime environment, a virtual machine, or
a
combination of one or more of them.
100901 A computer program (also known as a program, software, software
application, script, or code) can be written in any form of programming
language,
including compiled or interpreted languages, declarative or procedural
languages, and it
can be deployed in any form, including as a stand-alone program or as a
module,
component, subroutine, object, or other unit suitable for use in a computing
environment. A computer program may, but need not, correspond to a file in a
file
system. A program can be stored in a portion of a file that holds other
programs or data
(e.g., one or more scripts stored in a markup language document), in a single
file
dedicated to the program, or in multiple coordinated files (e.g., files that
store one or
31

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
more modules, sub programs, or portions of code). A computer program can be
deployed to be executed on one computer or on multiple computers that are
located at
one site or distributed across multiple sites and interconnected by a
communication
network.
100911 Some of the processes and logic flows described in this specification
can be
performed by one or more programmable processors executing one or more
computer
programs to perform actions by operating on input data and generating output.
The
processes and logic flows can also be performed by, and apparatus can also be
implemented as, special purpose logic circuitry, e.g., an FPGA (field
programmable gate
array) or an ASIC (application specific integrated circuit).
100921 Processors suitable for the execution of a computer program include, by
way
of example, both general and special purpose microprocessors, and processors
of any
kind of digital computer. Generally, a processor will receive instructions and
data from a
read-only memory or a random-access memory or both. Elements of a computer
system
can include a processor that performs actions in accordance with instructions,
and one
or more memory devices that store the instructions and data. A computer system
may
also include, or be operatively coupled to receive data from or transfer data
to, or both,
one or more mass storage devices for storing data, e.g., non-magnetic drives
(e.g., a
solid-state drive), magnetic disks, magneto optical disks, or optical disks.
However, a
computer system need not have such devices. Moreover, a computer system can be

embedded in another device, e.g., a phone, a tablet computer, an electronic
appliance, a
mobile audio or video player, a game console, a Global Positioning System
(GPS)
receiver, an Internet-of-Things (IoT) device, a machine-to-machine (M2M)
sensor or
actuator, or a portable storage device (e.g., a universal serial bus (USB)
flash drive).
Devices suitable for storing computer program instructions and data include
all forms
of non-volatile memory, media and memory devices, including by way of example
semiconductor memory devices (e.g., EPROM, EEPROM, flash memory devices, and
others), magnetic disks (e.g., internal hard disks, removable disks, and
others), magneto
optical disks, and CD ROM and DVD-ROM disks. In some cases, the processor and
the
memory can be supplemented by, or incorporated in, special purpose logic
circuitry.
100931 To provide for interaction with a user, operations can be implemented
on a
computer having a display device (e.g., a monitor, or another type of display
device) for
displaying information to the user and a keyboard and a pointing device (e.g.,
a mouse, a
32

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
trackball, a stylus, a touch sensitive screen, or another type of pointing
device) by which
the user can provide input to the computer. Other kinds of devices can be used
to
provide for interaction with a user as well; for example, feedback provided to
the user
can be any form of sensory feedback, e.g., visual feedback, auditory feedback,
or tactile
feedback; and input from the user can be received in any form, including
acoustic,
speech, or tactile input. In addition, a computer can interact with a user by
sending
documents to and receiving documents from a device that is used by the user;
for
example, by sending web pages to a web browser on a user's client device in
response
to requests received from the web browser.
100941 A computer system may include a single computing device, or multiple
computers that operate in proximity or generally remote from each other and
typically
interact through a communication network. The communication network may
include
one or more of a local area network ("LAN") and a wide area network ("WAN"),
an inter-
network (e.g., the Internet), a network comprising a satellite link, and peer-
to-peer
networks (e.g., ad hoc peer-to-peer networks). A relationship of client and
server may
arise by virtue of computer programs running on the respective computers and
having a
client-server relationship to each other.
100951 In a general aspect of some of the examples described, a location of
detected
motion in a space is determined.
100961 In a first example, motion of an object in a space is detected based on
wireless
signals communicated through the space by a wireless communication system
comprising multiple wireless communication devices. Each wireless signal is
transmitted and received by a respective pair of the wireless communication
devices.
Motion indicator values are computed, by operation of one or more processors,
for the
respective wireless communication devices. The motion indicator value for each

individual wireless communication device represents a degree of motion
detected by
the individual wireless communication device based on a subset of the wireless
signals
transmitted or received by the individual wireless communication device. A
location of
the detected motion in the space is determined based on the motion indicator
values.
100971 Implementations of the first example may, in some cases, include one or
more
of the following features. The wireless communication system may include a hub
device
and remote sensor devices, and the hub device may receive motion indicator
values
from the remote sensor devices and determine the location of the detected
motion
33

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
based on the received motion indicator values. The motion indicator values may
be
aggregate motion indicator values. Link motion indicator values are obtained
for
respective communication links in the wireless communication system, and the
aggregate motion indicator value for each wireless communication device is
computed
based on the link motion indicator values for the subset of the communication
links
supported by the wireless communication device. Each communication link may be

provided by a respective pair of the wireless communication devices. Computing
the
aggregate motion indicator value for a wireless communication device may
include
weighting the link motion indicator values for the subset of communication
links based
on signal quality metrics for the respective communication links. The wireless

communication system may include a plurality of communication links, where
each
communication link is provided by a respective pair of the wireless
communication
devices, and each communication link includes multiple communication paths,
with
each communication path being between a first signal hardware path of a first
wireless
communication device of the pair and a second signal hardware path of a second

wireless communication device of the pair. Path motion indicator values for
respective
communication paths in the wireless communication system may be obtained, and
the
aggregate motion indicator value for each wireless communication device may be

computed based on the path motion indicator values for the subset of the
communication paths supported by the wireless communication device.
[0098] Implementations of the first example may, in some cases, include one or
more
of the following features. A confidence factor may be computed, for each
wireless
communication device based on scaling the motion indicator value for the
wireless
communication device by a normative motion indicator value for the wireless
communication devices, wherein the location of the detected motion is
determined
based on the confidence factors. Determining the location of the detected
motion in the
space may include determining which of the wireless communication devices is
nearest
the detected motion based on comparing the respective motion indicator values
for the
wireless communication devices. The location of the detected motion in the
space may
be determined based on signal quality metrics for respective communication
links in the
wireless communication system, where each communication link provided by a
respective pair of the wireless communication devices. Determining the
location of the
detected motion in the space may include combining signal quality metrics for
the
34

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
subset of communication links supported by each wireless communication device.
The
motion indicator values may be provided as inputs to a neural network, and the
location
of the detected motion may be determined based on an output of the neural
network.
100991 In a second example, motion of an object in a space is detected based
on a
series of wireless signals communicated through the space by a wireless
communication system comprising multiple wireless communication devices. Time
factors are computed, by operation of one or more processors, for each
respective pair
of the wireless communication devices based on sequence values included in
respective
wireless signals transmitted and received between the pair of the wireless
communication devices. The sequence value in each wireless signal represents a
time
position of the wireless signal within the series. A location of the detected
motion in the
space is determined based on the time factors.
1001001 Implementations of the second example may, in some cases, include one
or
more of the following features. The wireless communication system may include
a hub
device and remote sensor devices. The hub device may receive motion indicator
values
from the remote sensor devices and determine the location of the detected
motion
based on the received motion indicator values and the time factors. Motion
indicator
values may be computed for the respective wireless communication devices of
the
wireless communication system, where the motion indicator value for each
individual
wireless communication device represents a degree of motion detected by the
individual wireless communication device. The motion indicator value may be
based on
a subset of the series wireless signals that are transmitted or received by
the individual
wireless communication device. The location of the detected motion may be
determined
based on the motion indicator values and the time factors. Each motion
indicator value
may be weighted by an associated time factor, and the location of the detected
motion
may be determined based on the weighted motion indicator values. The
associated time
factor may be for a same wireless communication device as the motion indicator
value.
1001011 Implementations of the second example may, in some cases, include one
or
more of the following features. Computing the time factors may include
selecting a
reference sequence value from among sequence values included in a set of the
wireless
signals received by the wireless communication devices of the wireless
communication
system, and computing the time factors for each communication link provided by
each
of the respective pairs of the wireless communication devices. The computing
of the

CA 03076837 2020-03-24
WO 2019/075552
PCT/CA2018/050051
time factor for each communication link may be based on a determination of
whether
the sequence values in the wireless signals received on the communication link
are
within a threshold sequence range of the reference sequence value. The
reference
sequence value may be a maximum or minimum sequence value in the set of the
wireless signals received by the wireless communication devices of the
wireless
communication system. Computing the time factor for each communication link
may
include determining whether a maximum sequence value included in a subset of
the
wireless signals received on the communication link is within a threshold
sequence
range of the reference sequence value. The sequence values may be provided as
inputs
to a neural network, and the time factors may be computed based on an output
of the
neural network.
1001021 In some implementations, a computer-readable storage medium stores
instructions that are operable when executed by a data processing apparatus to

perform one or more operations of the first or second example. In some
implementations, a system (e.g., a wireless communication device, computer
system or
other type of system communicatively coupled to the wireless communication
device)
includes one or more data processing apparatuses and a memory storing
instructions
that are operable when executed by the data processing apparatus to perform
one or
more operations of the first or second example. In some implementations, a
motion
detection system includes a hub device and one or more remote sensor devices
that are
configured to perform one or more operations of the first or second example.
1001031 While this specification contains many details, these should not be
construed
as limitations on the scope of what may be claimed, but rather as descriptions
of
features specific to particular examples. Certain features that are described
in this
specification in the context of separate implementations can also be combined.

Conversely, various features that are described in the context of a single
implementation can also be implemented in multiple embodiments separately or
in any
suitable subcombination.
1001041 A number of embodiments have been described. Nevertheless, it will be
understood that various modifications can be made. Accordingly, other
embodiments
are within the scope of the following claims.
36

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date Unavailable
(86) PCT Filing Date 2018-01-17
(87) PCT Publication Date 2019-04-25
(85) National Entry 2020-03-24
Examination Requested 2022-09-22

Abandonment History

There is no abandonment history.

Maintenance Fee

Last Payment of $210.51 was received on 2023-12-29


 Upcoming maintenance fee amounts

Description Date Amount
Next Payment if small entity fee 2025-01-17 $100.00
Next Payment if standard fee 2025-01-17 $277.00

Note : If the full payment has not been received on or before the date indicated, a further fee may be required which may be one of the following

  • the reinstatement fee;
  • the late payment fee; or
  • additional fee to reverse deemed expiry.

Patent fees are adjusted on the 1st of January every year. The amounts above are the current amounts if received by December 31 of the current year.
Please refer to the CIPO Patent Fees web page to see all current fee amounts.

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Maintenance Fee - Application - New Act 2 2020-01-17 $100.00 2020-03-24
Registration of a document - section 124 2020-03-30 $100.00 2020-03-24
Application Fee 2020-03-30 $400.00 2020-03-24
Maintenance Fee - Application - New Act 3 2021-01-18 $100.00 2021-01-12
Maintenance Fee - Application - New Act 4 2022-01-17 $100.00 2022-01-04
Back Payment of Fees 2022-09-22 $610.78 2022-09-22
Request for Examination 2023-01-17 $203.59 2022-09-22
Maintenance Fee - Application - New Act 5 2023-01-17 $203.59 2022-12-30
Maintenance Fee - Application - New Act 6 2024-01-17 $210.51 2023-12-29
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
COGNITIVE SYSTEMS CORP.
Past Owners on Record
None
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Abstract 2020-03-24 2 68
Claims 2020-03-24 5 214
Drawings 2020-03-24 9 148
Description 2020-03-24 36 1,888
Representative Drawing 2020-03-24 1 10
Patent Cooperation Treaty (PCT) 2020-03-24 2 75
International Search Report 2020-03-24 2 81
Declaration 2020-03-24 2 35
National Entry Request 2020-03-24 12 383
Voluntary Amendment 2020-03-24 9 306
Cover Page 2020-05-15 1 39
Maintenance Fee Payment 2021-01-12 1 33
Request for Examination 2022-09-22 3 111
Change to the Method of Correspondence 2022-09-22 2 47
Claims 2020-03-25 6 335
Description 2020-03-25 36 2,811
Office Letter 2022-12-07 2 197
Maintenance Fee Payment 2022-12-30 1 33
Maintenance Fee Payment 2023-12-29 1 33
Examiner Requisition 2024-01-29 7 368