IP Library Granted Patent US 12707231
Granted Patent B2
US 12707231 · App. 18/294,042 · Granted Aug 11, 2026

Ultra-wideband ranging method and device

Inventors: Liping Liu (Buffalo Grove, IL); Darren David Krahn (Saratoga, CA); Xiangjun Zhao (Santa Clara, CA); Ning Zhang (Saratoga, CA); Jian Wang (Cupertino, CA); Roshan Pius (Milpitas, CA)
Assignee: Google LLC
H04W4/023G01S13/0209G01S13/08G01S13/765H04L63/0492H04W4/80
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 12707231
App. No.
18/294,042
Granted
Aug 11, 2026
Kind
B2
Abstract

An ultra-wideband (UWB) ranging method comprises determining, by a first device, that the first device is within proximity of a second device. Responsive to the determination, the first device negotiates a value to use as a UWB session key for securing UWB communications with the second device. The negotiation occurs via a communication protocol different from a UWB communication protocol. The first device controls a UWB subsystem therein to encrypt information communicated via the UWB subsystem based on the negotiated value of the UWB session key instead of a default value for the UWB session key that is specified in the UWB communication protocol. The information facilitates determining the distance between the first device and the second device.

Claims (59)

1 . An ultra-wideband (UWB) ranging method, the method comprising:

responsive to determining, by a first device of a first user, that the first device is within proximity of a second device of a second user, negotiating, by the first device and with the second device, a value to use as a UWB session key to secure UWB communications, wherein the negotiating is performed via a communication protocol different from a UWB communication protocol; and

causing a UWB subsystem of the first device to encrypt information communicated via the UWB subsystem based on the negotiated value of the UWB session key instead of a default value for the UWB session key that is specified in the UWB communication protocol, wherein the information facilitates determining a distance between the first device of the first user and the second device of the second user;

wherein the first device implements a software stack comprising an application layer at which user applications operate, and a UWB communication protocol layer at which instruction code that facilitates UWB communications operates, wherein negotiating the value to use as the UWB session key to secure UWB communications comprises negotiating, at the application layer, the value of the UWB session key.

2 . The UWB ranging method of claim 1 , further comprising:

determining that the first device is within proximity of the second device via a communication protocol different from the UWB communication protocol.

3 . The UWB ranging method of claim 1 , wherein the communication protocol is one of a Bluetooth® protocol or an 802.11-based protocol.

4 . The UWB ranging method of claim 1 ,

wherein the first device implements a UWB session key negotiation layer, and

wherein the first device is configured to:

(i) negotiate the value of the UWB session key at the application layer if an established communication protocol exists between a user application operating at the application layer of the first device and an application operating at an application layer of the second device, and

(ii) if an established communication protocol does not exist, establish a communication protocol to negotiate the value via an application operating at the UWB session key negotiation layer, and

wherein negotiating the value of the UWB session key at the application layer comprises the negotiating of the UWB session key by the user application operating at the application layer of the first device.

5 . The UWB ranging method of claim 4 , wherein the method further comprises:

communicating, via the instruction code that operates at the UWB session key negotiation layer, the negotiated value of the UWB session key to the instruction code that operates at the UWB communication protocol layer.

6 . The UWB ranging method of claim 1 , wherein the second device implements a UWB session key negotiation layer at which instruction code that facilitates UWB session key negotiations operates, wherein negotiating the value to use as the UWB session key to secure UWB communications comprises:

if an established communication protocol exists between a user application operating at the application layer of the first device and an application operating at an application layer of the second device, then negotiating, via the established communication protocol, the value to use as the UWB session key to secure UWB communications;

wherein, if an established communication protocol does not exist, then a communication protocol is established to negotiate the value via an application operating at the UWB session key negotiation layer of the second device.

7 . The UWB ranging method of claim 6 , wherein the method further comprises:

communicating, via the instruction code that operates at the application layer, the negotiated value of the UWB session key to the instruction code that operates at the UWB communication protocol layer.

8 . The UWB ranging method of claim 1 , wherein a user application operating at the application layer of the first device has functionality of the UWB session negotiation layer functionality for implementing instruction code that facilitates UWB session key negotiations, and an application operating at an application layer of the second device has functionality of the UWB session negotiation layer functionality for implementing instruction code that facilitates UWB session key negotiations.

9 . The UWB ranging method of claim 8 , wherein the method further comprises:

communicating, via the instruction code that operates at the application layer, the negotiated value of the UWB session key to the instruction code that operates at the UWB communication protocol layer.

10 . The UWB ranging method of claim 1 , wherein the UWB communication protocol defines one or more packet configuration messages that comprise a scrambled timestamp sequence, STS, that facilitates determining the distance between the first device and the second device, wherein encrypting information communicated via the UWB subsystem comprises:

encrypting the STS of the one or more packet configuration messages communicated by the first device to the second device based on the negotiated UWB session key.

11 . The UWB ranging method of claim 1 , the method further comprising:

prior to negotiating the value to use as the UWB session key to secure UWB communications, requesting, by the first device, user permission to negotiate the value to use as the UWB session key to secure UWB communications; and

wherein responsive to receiving user permission, performing said negotiating of the value to use as the UWB session key to secure UWB communications.

12 . The UWB ranging method of claim 1 , the method further comprising:

determining whether a relationship exists between the first device and the second device; and

in response to determining that a relationship exists between the first device and the second device, retrieving a previously agreed session key or passcode known only to the first user of the first device and the second user of the second device for the session key negotiation.

13 . The UWB ranging method of claim 1 , wherein prior to negotiating the value to use as the UWB session key to secure UWB communications, the method comprises:

if a previously established value for the UWB session key to secure UWB communications is stored in the first device, using the previously established value as the value to use as the UWB session key to secure UWB communications.

14 . A first computing device that facilitates ultra-wideband (UWB) ranging, wherein the first computing device comprises:

one or more processors; and

a memory in communication with the one or more processors, wherein the memory stores instruction code that, when executed by the one or more processors, causes the first computing device to perform operations including:

responsive to determining that the first computing device is within proximity of a second computing device, negotiating, by the first computing device and with the second computing device, a value to use as a UWB session key to secure UWB communications, wherein the negotiating is performed via a communication protocol different from a UWB communication protocol, and

causing a UWB subsystem of the first computing device to encrypt information communicated via the UWB subsystem based on the negotiated value of the UWB session key instead of a default value for the UWB session key that is specified in the UWB communication protocol, wherein the information facilitates determining a distance between the first computing device of the first user and the second computing device of the second user,

wherein the first computing device implements a software stack comprising an application layer at which user applications operate, and a UWB communication protocol layer at which instruction code that facilitates UWB communications operates, wherein negotiating the value to use as the UWB session key to secure UWB communications comprises negotiating, at the application layer, the value of the UWB session key.

15 . The first computing device of claim 14 ,

wherein the first computing device implements a UWB session key negotiation layer, and

wherein the first computing device is configured to:

(i) negotiate the value of the UWB session key at the application layer if an established communication protocol exists between a user application operating at the application layer of the first computing device and an application operating at an application layer of the second computing device, and

(ii) if an established communication protocol does not exist, establish a communication protocol to negotiate the value via an application operating at the UWB session key negotiation layer, and

wherein negotiating the value of the UWB session key at the application layer comprises the negotiating of the UWB session key by the user application operating at the application layer.

16 . The first computing device of claim 14 , wherein a user application operating at the application layer of the first computing device has functionality of the UWB session negotiation layer functionality for implementing instruction code that facilitates UWB session key negotiations, and an application operating at an application layer of the second device has functionality of the UWB session negotiation layer functionality for implementing instruction code that facilitates UWB session key negotiations.

17 . The first computing device of claim 14 , wherein the UWB communication protocol defines one or more packet configuration messages that comprise a scrambled timestamp sequence, STS, that facilitates determining the distance between the first device and the second device, wherein encrypting information communicated via the UWB subsystem comprises:

encrypting the STS of the one or more packet configuration messages communicated by the first device to the second device based on the negotiated UWB session key.

18 . A computer-readable medium having stored thereon instruction code that facilitates ultra-wideband (UWB) ranging, wherein when executed by one or more processors of a first computing device, the instruction code causes the first computing device to perform operations comprising:

responsive to determining that the first computing device is within proximity of a second computing device, negotiating, by the first computing device and with the second computing device, a value to use as a UWB session key to secure UWB communications, wherein the negotiating is performed via a communication protocol different from a UWB communication protocol; and

causing a UWB subsystem of the first computing device to encrypt information communicated via the UWB subsystem based on the negotiated value of the UWB session key instead of a default value for the UWB session key that is specified in the UWB communication protocol, wherein the information facilitates determining a distance between the first computing device of the first user and the second computing device of the second user,

wherein the first computing device implements a software stack comprising an application layer at which user applications operate, and a UWB communication protocol layer at which instruction code that facilitates UWB communications operates, wherein negotiating the value to use as the UWB session key to secure UWB communications comprises negotiating, at the application layer, the value of the UWB session key.

19 . The computer-readable medium of claim 18 ,

wherein the first computing device implements a UWB session key negotiation layer, and

wherein the first computing device is configured to:

(i) negotiate the value of the UWB session key at the application layer if an established communication protocol exists between a user application operating at the application layer of the first computing device and an application operating at an application layer of the second computing device, and

(ii) if an established communication protocol does not exist, establish a communication protocol to negotiate the value via an application operating at the UWB session key negotiation layer, and

wherein negotiating the value of the UWB session key at the application layer comprises the negotiating of the UWB session key by the user application operating at the application layer.

20 . The computer-readable medium of claim 18 , wherein a user application operating at the application layer of the first computing device has functionality of the UWB session negotiation layer functionality for implementing instruction code that facilitates UWB session key negotiations, and an application operating at an application layer of the second device has functionality of the UWB session negotiation layer functionality for implementing instruction code that facilitates UWB session key negotiations.