IP Library Granted Patent US 10,320,763
Granted Patent B2
US 10,320,763 · App. 15/612,823 · Granted Jun 11, 2019

Efficient communication for devices of a home network

Inventors: Grant M. Erickson (Sunnyvale, CA); Jay D. Logue (San Jose, CA); Christopher A. Boross (San Francisco, CA); Zachary B. Smith (San Francisco, CA); Osborne B. Hardison (Palo Alto, CA); Richard J. Schultz (Mountain View, CA); Sunny P. Gujjaru (Sunnyvale, CA); Matthew G. Neeley (San Mateo, CA)
H04L63/061G06F8/65H04L9/0861H04L9/14H04L9/30H04L9/32H04L9/3247H04L9/3263H04L9/3265H04L45/00H04L45/74H04L61/6059H04L63/083H04L67/10H04L67/12H04L67/34H04L69/165H04L69/22H04W12/04H04W12/06H04W24/04H04W24/10H04W52/0212H04W52/383H04W60/00H04W72/0493H04W76/10H04W76/14H04W84/12H04W88/02H04L51/00H04L61/2038H04L61/6004H04L63/0823H04W80/045H04W84/18H04W88/04H04W88/06Y02D70/00Y02D70/142Y02D70/144Y02D70/162Y02D70/164Y02D70/166Y02D70/22Y02D70/26Y04S40/18
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 10,320,763
App. No.
15/612,823
Filed
Jun 2, 2017
Granted
Jun 11, 2019
Kind
B2
Art Unit
2471
USPC
370/254
Abstract

Systems and methods are provided for efficient communication through a fabric network of devices in a home environment or similar environment. For example, an electronic device may efficiently control communication to balance power and reliability concerns, may efficiently communicate messages to certain preferred networks by analyzing Internet Protocol version 6 (IPv6) packet headers that use an Extended Unique Local Address (EULA), may efficiently communicate software updates and status reports throughout a fabric network, and/or may easily and efficiently join a fabric network.

Claims (70)

1. A method of joining a first device and a second device in a fabric network, the method comprising:

creating, by the first device, a first joining network, the first joining network having a network name comprising an identifier of the first device that includes a string identifying the first joining network as a joining network and a flag indicating whether the first device is part of the fabric network;

scanning for a second joining network;

in response to the scanning, detecting the second joining network, the second joining network having been created by the second device, the second joining network having a network name comprising an identifier of the second device; and

determining, by the first device, whether to join the second joining network, or to join the second device to the first joining network.

2. The method of claim 1 , wherein the determining whether to join the second joining network, or to join the second device to the first joining network comprises:

comparing, by the first device, the identifiers of the first device and the second device;

joining the second joining network if a value of the identifier of the first device is less than a value of the identifier of the second device; or

joining the second device to the first joining network if the value of the identifier of the first device is greater than the value of the identifier of the second device.

3. The method of claim 2 , wherein the first device is joining the second joining network, the method further comprising:

terminating the first joining network;

sending a solicit joining message to the second device;

receiving a solicit joining request from the second device; and

sending fabric network information to the second device in a join existing fabric network request.

4. The method of claim 2 , wherein the second device is joining the first joining network, the method further comprising:

receiving a solicit joining message from the second device;

creating the fabric network;

joining the first device to the fabric network; and

sending a join existing fabric network request that is effective to join the second device to the fabric network.

5. The method of claim 1 , wherein the first joining network and the second joining network are IEEE 802.15.4 networks.

6. The method of claim 1 , the method further comprising activating the first device to begin the joining the first device and the second device in the fabric network.

7. The method of claim 6 , wherein activating the first device to begin the joining comprises receiving a user input, by the first device, to activate the first device.

8. An electronic device configured to join an additional device in a fabric network, the electronic device comprising:

a processor; and

a memory comprising instructions executable by the processor that configure the electronic device to:

create a joining network, the joining network having a network name comprising an identifier of the electronic device that includes a string identifying the joining network as a joining network and a flag indicating whether the electronic device is part of the fabric network;

scan for another joining network;

in response to the scan, detect the other joining network, the other joining network having been created by the additional device, the other joining network having a network name comprising an identifier of the additional device; and

determine whether to join the other joining network, or to join the additional device to the joining network.

9. The electronic device of claim 8 , wherein, to determine whether to join the other joining network or to join the additional device to the joining network comprises the electronic device configured to:

compare the identifiers of the electronic device and the additional device;

join the electronic device to the other joining network if a value of the identifier of the electronic device is less than a value of the identifier of the additional device; or

join the additional device to the joining network if the value of the identifier of the electronic device is greater than the value of the identifier of the additional device.

10. The electronic device of claim 9 , wherein, for the electronic device to join the second joining network, the electronic device is configured to:

terminate the joining network;

send a solicit joining message to the additional device;

receive a solicit joining request from the additional device; and

send fabric network information to the additional device in a join existing fabric network request.

11. The electronic device of claim 9 , wherein, for the additional device to join the joining network, the electronic device is configured to:

receive a solicit joining message from the additional device;

create the fabric network;

join the electronic device to the fabric network; and

send a join existing fabric network request that is effective to join the additional device to the fabric network.

12. The electronic device of claim 8 , wherein the joining network and the other joining network are IEEE 802.15.4 networks.

13. The electronic device of claim 8 , wherein the electronic device is configured to receive an input to activate the electronic device to begin joining the electronic device and the additional device in the fabric network.

14. The electronic device of claim 13 , wherein the input to activate the electronic device to begin joining the electronic device is a push, by a user, of a button on the electronic device.

15. A system for creating a fabric network, the system comprising:

an electronic device configured to:

create a joining network, the joining network having a network name comprising an identifier of the electronic device that includes a string identifying the joining network as a joining network and a flag indicating whether the electronic device is part of the fabric network;

scan for another joining network;

in response to the scan, detect the other joining network; and

determine whether to join the other joining network, or to join an additional device to the joining network; and

the additional device configured to:

create the other joining network, the other joining network having a network name comprising an identifier of the additional device.

16. The system of claim 15 , wherein, to determine whether to join the other joining network or to join the additional device to the joining network comprises the electronic device configured to:

compare the identifiers of the electronic device and the additional device;

join the other joining network if a value of the identifier of the electronic device is less than a value of the identifier of the additional device; or

join the additional device to the joining network if the value of the identifier of the electronic device is greater than the value of the identifier of the additional device.

17. The system of claim 16 , wherein, for the electronic device to join the other joining network, the electronic device is configured to:

terminate the joining network;

send a solicit joining message to the additional device;

receive a solicit joining request from the additional device; and

send fabric network information to the additional device in a join existing fabric network request.

18. The system of claim 16 , wherein, for the additional device to join the joining network, the electronic device is configured to:

receive a solicit joining message from the additional device;

create the fabric network;

join the electronic device to the fabric network; and

send a join existing fabric network request that is effective to join the additional device to the fabric network.

19. The system of claim 15 , wherein the joining network and the other joining network are IEEE 802.15.4 networks.

20. The system of claim 15 , wherein the electronic device is configured to receive an input to activate the electronic device to begin joining the electronic device and the additional device in the fabric network.

Assignments (3)
CHANGE OF NAME Recorded Oct 5, 2017
From: GOOGLE INC.
To: GOOGLE LLC
Reel/Frame 044129/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2017
From: NEST LABS, INC.
To: GOOGLE INC.
Reel/Frame 042579/0147 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 2, 2017
From: ERICKSON, GRANT M.; LOGUE, JAY D.; BOROSS, CHRISTOPHER A.; SMITH, ZACHARY B.; HARDISON, OSBORNE B.; SCHULTZ, RICHARD J.; GUJJARU, SUNNY P.; NEELEY, MATTHEW G.
To: NEST LABS, INC.
Reel/Frame 042670/0305 →
Continuity (3)
Continuation 14885739 · Oct 16, 2015
Continuation 13926335 · Jun 25, 2013
Related Publication 20170272416A1 · Sep 21, 2017