IP Library › Granted Patent US 11,758,598
Granted Patent B1
US 11,758,598 · App. 17/659,382 · Granted Sep 12, 2023

Automated multi-client and multi-mode wireless device pairing and connection methods and systems

Inventors: Harpreet Narula (Austin, TX); Alok Pant (Austin, TX); Brian Eugene Manser (Round Rock, TX)
Assignee: Dell Products, L.P.
H04W76/14H04W4/80H04W12/50
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 11,758,598
App. No.
17/659,382
Granted
Sep 12, 2023
Kind
B1
Abstract

Embodiments allow for multiple instances of a state machine to connect with multiple clients. Additionally, a plurality of connection states, while maintaining a connection with a single physical client device, may support multiple modes. For example, a wireless peripheral device determines whether it is paired with a client device and connects if it is, by selecting a saved long term bonding key, based on a user selected device mode. When a scan timeout expires, the device switches to another saved bonding key. When an overall connection timeout expires, these steps repeat. If the device is not already paired, it pairs with a client by setting long term paring key generation key(s), bonding with the client using the generation key(s) to generate a paring key, distributing the pairing key to the client, and saving the pairing key, as a bonding key, based on user selected device mode.

Claims (66)

1. A method for automated multi-client and multi-mode wireless device pairing and connection comprising:

determining, by a wireless peripheral device, whether the wireless peripheral device is paired with a central client device; and

connecting, by the wireless peripheral device, in response to a determination the wireless peripheral device is paired, with the central client device, connecting comprising:

selecting, by the wireless peripheral device, a saved long term bonding key, based at least in part on a user selected mode of the wireless peripheral device;

determining, by the wireless peripheral device, whether a predetermined scan timeout has expired;

switching, by the wireless peripheral device, to another saved long term bonding key, in response to a determination that the predetermined scan timeout has expired;

determining, by the wireless peripheral device, whether a predetermined overall connection timeout has expired;

repeating, by the wireless peripheral device, in response to a determination that the predetermined overall connection timeout has expired, the determining whether a predetermined scan timeout has expired and switching to another saved long term bonding key in response to a determination that the predetermined scan timeout has expired;

advertising for a connection, by the wireless peripheral device, in response to a determination that the predetermined scan timeout has not expired; and

checking for a central client device request to connect and connecting to the central client device, by the wireless peripheral device, in response to initiation of a connect request from the central client device.

2. The method of claim 1 , further comprising:

pairing, by the wireless peripheral device, in response to a determination the wireless peripheral device is not paired, with the central client device, pairing comprising:

setting, by the wireless peripheral device, one or more keys to be used to generate a long term paring key, based at least in part on the user selected mode of the wireless peripheral device;

bonding, by the wireless peripheral device, with the central client device, using the one or more keys to generate the long term paring key;

distributing, by the wireless peripheral device, the long term pairing key to the central client device; and

saving, by the wireless peripheral device and the central client device, the long term pairing key, as a long term bonding key, based at least in part on the user selected mode of the wireless peripheral device.

3. The method of claim 2 , further comprising, following saving the long term pairing key, based at least in part on the user selected mode of the wireless peripheral device:

establishing a secure channel between the wireless peripheral device and the central client device; and

setting, by the central client device, the predetermined scan timeout.

4. The method of claim 3 , wherein the wireless peripheral device is a BLUETOOTH enabled device and the predetermined scan timeout is a BLUETOOTH generic attribute profile attribute.

5. The method of claim 2 , wherein the wireless peripheral device is a BLUETOOTH enabled device and the long term pairing key and long term bonding key is a BLUETOOTH long term key.

6. The method of claim 2 , wherein the user selected mode of the wireless peripheral device comprises a user selected one of an operating system mode and a basic input output system mode.

7. The method of claim 2 , wherein the user selected mode of the wireless peripheral device comprises a user selected one of a first operating system mode and a second operating system mode.

8. The method of claim 2 , further comprising accepting, by the wireless peripheral device, selection of the user selected mode of the wireless peripheral device via a mechanism provided by the wireless peripheral device.

9. A multi-client and multi-mode pairing and connection wireless peripheral device comprising:

logic configured to:

determine whether the wireless peripheral device is paired with a central client device; and

connect with the central client device, in response to a determination the wireless peripheral device is paired, by:

selecting a saved long term bonding key, based at least in part on a user selected mode of the wireless peripheral device;

determining whether a predetermined scan timeout has expired;

switching to another saved long term bonding key, in response to a determination that the predetermined scan timeout has expired;

determining whether a predetermined overall connection timeout has expired;

repeating, in response to a determination that the predetermined overall connection timeout has expired, the determining whether a predetermined scan timeout has expired and switching to another saved long term bonding key in response to a determination that the predetermined scan timeout has expired;

advertising for a connection in response to a determination that the predetermined scan timeout has not expired; and

checking for a central client device request to connect and connecting to the central client device in response to initiation of a connect request from the central client device.

10. The wireless peripheral device of claim 9 , wherein the logic is further configured to pair with the central client device, in response to a determination the wireless peripheral device is not paired, by:

setting one or more keys to be used to generate a long term paring key, based at least in part on the user selected mode of the wireless peripheral device;

bonding with the central client device by using the one or more keys to generate the long term paring key;

distributing the long term pairing key to the central client device; and

saving the long term pairing key, as a long term bonding key, based at least in part on the user selected mode of the wireless peripheral device.

11. The wireless peripheral device of claim 10 , wherein following saving the long term pairing key, based at least in part on the user selected mode of the wireless peripheral device the logic:

establishes a secure channel between the wireless peripheral device and the central client device; and

sets the predetermined scan timeout, based on an attribute provided by the central client device.

12. The wireless peripheral device of claim 11 , wherein the wireless peripheral device is a BLUETOOTH enabled device and the predetermined scan timeout is a BLUETOOTH generic attribute profile attribute.

13. The wireless peripheral device of claim 10 , wherein the wireless peripheral device is a human interface device.

14. The wireless peripheral device of claim 10 , wherein the wireless peripheral device is a BLUETOOTH enabled device and the long term pairing key and long term bonding key is a BLUETOOTH long term key.

15. The wireless peripheral device of claim 10 , wherein the wireless peripheral device further comprises a mechanism configured to accept selection of the user selected mode of the wireless peripheral device.

16. The wireless peripheral device of claim 15 , wherein the mechanism comprises one or more buttons configured to select between a plurality of central client devices and/or a wireless communication adapter.

17. The wireless peripheral device of claim 16 , wherein the logic is further configured to accept selection of the user selected mode of the wireless peripheral device via a length of a press of one of the buttons.

18. The wireless peripheral device of claim 16 , wherein the logic is further configured to accept selection of the user selected mode of the wireless peripheral device via a number of clicks of one of the buttons.

19. A non-transitory computer readable medium having program instructions stored thereon that, upon execution by a wireless peripheral device cause the wireless peripheral device to:

determine whether the wireless peripheral device is paired with a central client device; and

connect with the central client device, in response to a determination the wireless peripheral device is paired, by:

selecting a saved long term bonding key, based at least in part on a user selected mode of the wireless peripheral device;

determining whether a predetermined scan timeout has expired;

switching to another saved long term bonding key, in response to a determination that the predetermined scan timeout has expired;

determining whether a predetermined overall connection timeout has expired;

repeating, in response to a determination that the predetermined overall connection timeout has expired, the determining whether a predetermined scan timeout has expired and switching to another saved long term bonding key in response to a determination that the predetermined scan timeout has expired;

advertising for a connection in response to a determination that the predetermined scan timeout has not expired; and

checking for a central client device request to connect and connecting to the central client device in response to initiation of a connect request from the central client device.

20. The non-transitory computer readable medium of claim 19 , wherein upon execution by the wireless peripheral device the program instructions further cause the wireless peripheral device to:

pair with the central client device, in response to a determination the wireless peripheral device is not paired, by:

setting one or more keys to be used to generate a long term paring key, based at least in part on the user selected mode of the wireless peripheral device;

bonding with the central client device by using the one or more keys to generate the long term paring key;

distributing the long term pairing key to the central client device; and

saving the long term pairing key, as a long term bonding key, based at least in part on the user selected mode of the wireless peripheral device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 15, 2022
From: NARULA, HARPREET; PANT, ALOK; MANSER, BRIAN EUGENE
To: DELL PRODUCTS, L.P.
Reel/Frame 059610/0376 →
Cited By (4)
US 12,284,600 US 12,641,529 US 12,732,490 US 12,738,187