IP Library Granted Patent US 12689461
Granted Patent B2
US 12689461 · App. 18/378,064 · Granted Jul 21, 2026

Jammer resilient UWB communication system

Inventors: Erik Kraft (Graz, AT); Stefan Lemsitzer (Stainz, AT); Marcel Medwed (Graz, AT); Pablo Corbalán Pelegrín (Callosa de Segura, ES); Tobias Schneider (Graz, AT)
Assignee: NXP B.V.
H04K3/86G06F7/582H04B1/7183H04B1/719
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12689461
App. No.
18/378,064
Granted
Jul 21, 2026
Kind
B2
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.

Claims (71)

1 . 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.

2 . The system of claim 1 , wherein the processor is configured to receive, using the second radio controller, a second configuration parameter, wherein the second configuration parameter determines a configuration of the pseudo random number generator.

3 . The system of claim 1 , wherein the processor is configured to determine a current preamble hopping state value and the preamble hopping state value is equal to the input data value to the pseudo random number generator.

4 . The system of claim 1 , wherein the first protocol subdivides communication operations into a plurality of sequential time slots.

5 . The system of claim 1 , wherein the processor is configured to determine a current preamble hopping state value and a preamble hopping state value is equal to the input data value to the pseudo random number generator.

6 . 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.

7 . The system of claim 6 , wherein the first preamble code is a fixed value.

8 . The system of claim 7 , wherein the first preamble code is determined pseudo randomly.

9 . The system of claim 6 , wherein the processor is configured to determine the current preamble hopping state value and a preamble hopping state value is equal to the input data value to the pseudo random number generator.

10 . 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.

11 . The method of claim 10 , further comprising receiving, using the second radio controller, a second configuration parameter, wherein the second configuration parameter determines a configuration of the pseudo random number generator.

12 . The method of claim 10 , further comprising determining a current preamble hopping state value and the current preamble hopping state value is equal to the input data value to the pseudo random number generator.

13 . 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.

14 . The method of claim 13 , further comprising determining a current preamble hopping state value and the current preamble hopping state value is equal to the input data value to the pseudo random number generator.

15 . 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.

16 . The system of claim 15 , wherein the first preamble code is a fixed value.

17 . The system of claim 16 , wherein the first preamble code is determined pseudo randomly.

18 . The system of claim 15 , 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.

19 . The system of claim 18 , wherein 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.