Jammer resilient UWB communication system
AssigneeNXP B.V.
InventorsErik Kraft, Stefan Lemsitzer, Marcel Medwed, Pablo Corbalán Pelegrín, Tobias Schneider
Life of this patent
Estimating the term…
Abstract
A device includes a first radio controller configured to communicate using a first protocol, and a pseudo random number generator configured to generate a pseudo random output value based on an input data value. The device includes a processor configured to determine a preamble code based on an output of the pseudo random number generator, and process a data packet received using the first radio controller using the preamble code to generate a processed data packet.
Claims19
A system, comprising:
- a plurality of ultra-wideband (UWB) anchors configured to broadcast UWB timing data in a plurality of data packets, wherein each data packet is associated with a preamble code;
- and
- a device, including:
- a first radio controller configured to communicate with the plurality of UWB anchors using a first protocol, wherein the first protocol subdivides communication operations into a plurality of sequential time slots;
- a pseudo random number generator configured to generate a pseudo random output value based on an input data value;
- and
- a processor configured to:
- provide the input data value to the pseudo random number generator to cause the pseudo random number generator to output the pseudo random output value;
- determine, using the pseudo random output value, the preamble code;
- process at least one data packet of the plurality of data packets received using the first radio controller and from a first UWB anchor in the plurality of UWB anchors using the preamble code to generate a processed data packet;
- determine a location of the device using the processed data packet;
- and
- increment a preamble hopping state value upon an occurrence of each subsequent time slot;
- and
- wherein:
- the device includes a second radio controller configured to communicate using a second protocol, wherein the second protocol is not a UWB communication protocol;
- and
- the processor is configured to receive, using the second radio controller, a first configuration parameter, wherein the first configuration parameter indicates a mapping of pseudo random output values of the pseudo random number generator to preamble codes.
A system, comprising:
- a plurality of ultra-wideband (UWB) anchors configured to broadcast UWB timing data in a plurality of data packets, wherein each data packet is associated with a preamble code;
- and
- a device, including:
- a first radio controller configured to communicate with the plurality of UWB anchors using a first protocol;
- a pseudo random number generator configured to generate a pseudo random output value based on an input data value;
- and
- a processor configured to:
- provide the input data value to the pseudo random number generator to cause the pseudo random number generator to output the pseudo random output value;
- determine, using the pseudo random output value, the preamble code;
- process at least one data packet of the plurality of data packets received using the first radio controller and from a first UWB anchor in the plurality of UWB anchors using the preamble code to generate a processed data packet;
- and
- determine a location of the device using the processed data packet;
- wherein when the device is not time synchronized to the plurality of UWB anchors and the processor is configured to:
- determine a first preamble code out of a plurality of preamble codes, wherein the plurality of preamble codes is determined by the first protocol;
- repeatedly use the first preamble code to attempt to decode ranging initiation messages or ranging synchronization messages received from the plurality of UWB anchors;
- and
- upon successfully using the first preamble code to decode a first ranging initiation message or ranging synchronization message, determine a current preamble hopping state value of the plurality of UWB anchors.
A method, comprising:
- providing an input data value to a pseudo random number generator to cause the pseudo random number generator to output a pseudo random output value;
- determining, using the pseudo random output value as an input to the pseudo random number generator, a preamble code;
- processing a data packet received using a first radio controller configured to communicate using a first communication protocol using the preamble code to generate a processed data packet, wherein the first protocol subdivides communication operations into a plurality of sequential time slots and further comprising incrementing the preamble hopping state value upon an occurrence of each subsequent time slot;
- receiving, using a second radio controller configured to communicate using a second communication protocol, a first configuration parameter, wherein the first configuration parameter indicates a mapping of pseudo random output values of the pseudo random number generator to preamble codes;
- and
- determining a location of a device using the processed data packet.
A method comprising:
- providing an input data value to a pseudo random number generator to cause the pseudo random number generator to output a pseudo random output value;
- determining, using the pseudo random output value as an input to the pseudo random number generator, a preamble code;
- processing a data packet received using a first radio controller configured to communicate using a first communication protocol using the preamble code to generate a processed data packet, wherein the first protocol subdivides communication operations into a plurality of sequential time slots and further comprising incrementing the preamble hopping state value upon an occurrence of each subsequent time slot;
- determining a first preamble code out of a plurality of preamble codes, wherein the plurality of preamble codes is determined by the first communication protocol;
- repeatedly using the first preamble code to attempt to decode messages received using the first radio controller;
- upon successfully using the first preamble code to decode a first message, determine a current preamble hopping state;
- and
- determining a location of a device using the processed data packet.
A system, comprising:
- a plurality of ultra-wideband (UWB) anchors configured to broadcast UWB timing data in a plurality of data packets, wherein each data packet is associated with a preamble code;
- and
- a device, including:
- a first radio controller configured to communicate with the plurality of UWB anchors using a first protocol, wherein the first protocol subdivides communication operations into a plurality of sequential time slots;
- a pseudo random number generator configured to generate a pseudo random output value based on an input data value;
- and
- a processor configured to:
- provide the input data value to the pseudo random number generator to cause the pseudo random number generator to output the pseudo random output value;
- determine, using the pseudo random output value, the preamble code;
- process at least one data packet of the plurality of data packets received using the first radio controller and from a first UWB anchor in the plurality of UWB anchors using the preamble code to generate a processed data packet;
- determine a location of the device using the processed data packet;
- and
- increment a preamble hopping state value upon an occurrence of each subsequent time slot;
- wherein when the device is not time-synchronized to the plurality of UWB anchors and the processor is configured to:
- determine a first preamble code out of a plurality of preamble codes, wherein the plurality of preamble codes is determined by the first protocol;
- repeatedly use the first preamble code to attempt to decode ranging initiation messages or ranging synchronization messages received from the plurality of UWB anchors;
- and
- upon successfully using the first preamble code to decode a first ranging initiation message or ranging synchronization message, determine a current preamble hopping state value of the plurality of UWB anchors.
Dependencies are inferred from the claim text.