IP Library › Granted Patent US 12,732,490
Granted Patent B2
US 12,732,490 · App. 17/974,328 · Granted Sep 8, 2026

Reducing bluetooth connection latency using selective GATT cache requests

Inventor: Jason Paul O'Broin (Alameda, CA)
Assignee: Cisco Technology, Inc.
H04L63/062H04W76/10G16Y30/10
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 12,732,490
App. No.
17/974,328
Granted
Sep 8, 2026
Kind
B2
Abstract

In one embodiment, a first device obtains generic attribute (GATT) information from a second device. The first device also obtains long term key information by forming a Bluetooth connection with a second device. The first device performs an exchange with the second device to validate the long term key information. The first device obtains, based on the exchange, updated GATT information from the second device, when the long term key information is no longer valid.

Claims (41)

1 . A method comprising:

obtaining, by a first device, generic attribute (GATT) information from a second device;

obtaining, by the first device, long term key information by forming a Bluetooth connection with the second device;

performing, by the first device, an exchange with the second device to determine whether the long term key information is valid or is no longer valid, wherein the exchange includes transmitting, by the first device, a key validity request and receiving, from the second device, a response indicating whether the long term key information is valid;

determining, by the first device, that the GATT information of the second device has changed based on at least one of the first device being unable to decode the response, the response indicating an invalid long term key result, or the first device failing to validate the long term key information; and

obtaining, by the first device and based on the determining that the GATT information has changed, updated GATT information from the second device, when the long term key information is no longer valid,

wherein the updated GATT information from the second device is attributable to a reboot of the second device.

2 . The method as in claim 1 , wherein the GATT information includes an attribute handle for an attribute stored by the second device that is requestable by the first device via the Bluetooth connection.

3 . The method as in claim 1 , wherein the first device or the second device stores the long term key information in a volatile memory.

4 . The method as in claim 1 , further comprising:

making, by the first device and based on the exchange, a determination that the GATT information does not need to be updated, when the long term key information is still valid.

5 . The method as in claim 1 , wherein the second device invalidates the long term key information based on the updated GATT information.

6 . The method as in claim 1 , wherein the first device is a network gateway.

7 . The method as in claim 1 , wherein the second device is a wireless sensor.

8 . The method as in claim 1 , wherein the second device is onboarded to a supervisory service via the first device and using a security key configured on the second device during its manufacturing.

9 . The method as in claim 1 , wherein obtaining the long term key information comprises:

performing a Bluetooth bonding exchange with the second device.

10 . An apparatus, comprising:

one or more network interfaces to communicate with a network;

a processor coupled to the one or more network interfaces and configured to execute one or more processes; and a memory configured to store a process that is executable by the processor, the process, when executed, configured to:

obtain generic attribute (GATT) information from a device;

obtain long term key information by forming a Bluetooth connection with the device;

perform an exchange with the device to determine whether the long term key information is valid or is no longer valid, wherein the exchange includes transmitting a key validity request to the device and receiving, from the device, a response indicating whether the long term key information is valid;

determine that the GATT information of the device has changed based on at least one of being unable to decode the response, the response indicating an invalid long term key result, or failing to validate the long term key information; and

obtain, based on the determining that the GATT information has changed, updated GATT information from the device, when the long term key information is no longer valid,

wherein the updated GATT information from the device is attributable to a reboot of the device.

11 . The apparatus as in claim 10 , wherein the GATT information includes an attribute handle for an attribute stored by the device that is requestable by the apparatus via the Bluetooth connection.

12 . The apparatus as in claim 10 , wherein the apparatus or the device stores the long term key information in a volatile memory.

13 . The apparatus as in claim 10 , wherein the process when executed is further configured to:

make, based on the exchange, a determination that the GATT information does not need to be updated, when the long term key information is still valid.

14 . The apparatus as in claim 10 , wherein the device invalidates the long term key information based on the updated GATT information.

15 . The apparatus as in claim 10 , wherein the apparatus is a network gateway.

16 . The apparatus as in claim 10 , wherein the device is a wireless sensor.

17 . The apparatus as in claim 10 , wherein the device is onboarded to a supervisory service via the apparatus and using a security key configured on the device during its manufacturing.

18 . A tangible, non-transitory, computer-readable medium storing program instructions that cause a first device to execute a process comprising:

obtaining, by the first device, generic attribute (GATT) information from a second device;

obtaining, by the first device, long term key information by forming a Bluetooth connection with the second device;

performing, by the first device, an exchange with the second device to determine whether the long term key information is valid or is no longer valid, wherein the exchange includes transmitting, by the first device, a key validity request and receiving, from the second device, a response indicating whether the long term key information is valid;

determining, by the first device, that the GATT information of the second device has changed based on at least one of the first device being unable to decode the response, the response indicating an invalid long term key result, or the first device failing to validate the long term key information; and

obtaining, by the first device and based on the determining that the GATT information has changed, updated GATT information from the second device, when the long term key information is no longer valid,

wherein the updated GATT information from the second device is attributable to a reboot of the second device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2022
From: O'BROIN, JASON PAUL
To: CISCO TECHNOLOGY, INC.
Reel/Frame 061550/0084 →
Continuity (1)
Related Publication 20240146705A1 · May 2, 2024
References Cited (18)
US 9294903B2 · Palin et al. · 2016 [cited by applicant]
US 10349354B2 · Kvetny et al. · 2019 [cited by applicant]
US 10735467B2 · Yang et al. · 2020 [cited by applicant]
US 11758598B1 · Narula · 2023 [cited by examiner]
US 20180359633A1 · Liu · 2018 [cited by examiner]
US 20190028445A1 · McLaughlin · 2019 [cited by examiner]
US 20200120587A1 · Prasad · 2020 [cited by examiner]
US 20220030505A1 · Lee et al. · 2022 [cited by applicant]
US 20220292202A1 · Manevich · 2022 [cited by examiner]
WO WO2008040201A1 · 2008 [cited by examiner]
WO WO2022178871A1 · 2022 [cited by examiner]
Bluetooth Core Specification—Part G. Generic Attribute Profile (GATT) (Year: 2016). [cited by examiner]
“Mesh Strengthens Bluetooth Wireless' IoT Credentials”, online: https://www.nordicsemi.com/News/2018/02/Mesh-strengthens-Bluetooth-wireless-IoT-credentials, 2018, accessed Jun. 6, 2022, 8 pages. [cited by applicant]
Nao, Laura, “BLE Pairing and Bonding”, online: https://technotes.kynetics.com/2018/BLE_Pairing_and_bonding/, 2018, accessed Sep. 8, 2022, 9 pages. [cited by applicant]
“GATT / Introduction to Bluetooth Low Energy / Adafruit Learning System”, online: https://learn.adafruit.com/introduction-to-bluetooth-low-energy/gatt, accessed Sep. 8, 2022, 15 pages. [cited by applicant]
Ong, Chee Yi, “The Ultimate Guide to AndroidBluetooth Low Energy”, online: https://punchthrough.com/android-ble-guide/, May 2020, accessed Sep. 8, 2022, 62 pages, Punch Through. [cited by applicant]
Townsend, et al., “Chapter 4. GATT (Services and Characteristics)”, online: https://www.oreilly.com/library/view/getting-started-with/9781491900550/ch04.html, accessed Sep. 13, 2022, 35 pages. [cited by applicant]
Stafford, Gary, “BLE and GATT for IoT: Getting Started with Bluetooth Low Energy and theGeneric Attribute Profile Specification for IoT”, online: https://programmaticponderings.com/2020/08/04/getting-started-with-blueto… [cited by applicant]