IP Library Granted Patent US 7,801,185
Granted Patent B2
US 7,801,185 · App. 11/529,605 · Granted Sep 21, 2010

Device control system, method, and apparatus for server-based or peer-to-peer network environments

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 7,801,185
App. No.
11/529,605
Granted
Sep 21, 2010
Kind
B2
Abstract

In a device control system that provides a means for controlling a variety of device types via a unified interface, such as via a handheld controller, a synchronization protocol ensures synchronization between a plurality of such controllers in a peer-to-peer network environment, provides a means for transferring custom configurations between such controllers, and provides a means for migrating such a controller from a peer-to-peer network environment to a server-based network environment and vice-versa.

Claims (53)

1. A method for migrating a controller adapted to remotely control one or more electronic devices from a stand-alone mode to a client-server mode, wherein the controller remotely controls the one or more electronic devices in accordance with a control configuration maintained by the controller in the stand-alone mode, the method comprising:

discovering a server that is communicatively coupled to the controller and the one or more electronic devices;

transmitting data to said server relating to the control configuration maintained by the controller;

updating a control configuration maintained by said server based on said transmitted data; and

subsequently controlling the one or more electronic devices in the client-server mode, wherein controlling the one or more electronic devices in the client-server mode comprises issuing commands by said server directly to the one or more electronic devices in accordance with said updated control configuration maintained by said server.

2. The method of claim 1 , wherein said transmitting comprises transmitting data to said server relating to one or more events that have occurred since a prior synchronization with said server.

3. The method of claim 1 , wherein said transmitting comprises transmitting data to said server relating to the control configuration maintained by the controller in response to user input.

4. The method of claim 1 , wherein discovering said server comprises:

transmitting a query message; and waiting a predetermined amount of time to receive a reply to said query message.

5. An apparatus for remotely controlling one or more electronic devices, comprising:

a network interface adapted for communication over a network;

a user interface adapted to receive user input; and

control logic coupled to said network interface and said user interface and adapted to execute commands in response to said user input;

wherein said control logic is further adapted to discover a server that is communicatively coupled to said network and to the one or more electronic devices and to transmit data to said server relating to a control configuration maintained by the apparatus and used by the apparatus to remotely control the one or more electronic devices in a stand-alone mode, and

wherein said server is adapted to update a control configuration maintained by said server based on said transmitted data and to subsequently control the one or more electronic devices in a client-server mode by issuing commands directly to the one or more electronic devices in accordance with said updated control configuration maintained by said server.

6. The apparatus of claim 5 , wherein said network interface comprises a transceiver.

7. The apparatus of claim 6 , wherein said transceiver is adapted for communication in accordance with an IEEE 802.3 Ethernet protocol.

8. The apparatus of claim 6 , wherein said transceiver is adapted for wireless communication in accordance with a Bluetooth protocol.

9. The apparatus of claim 6 , wherein said transceiver is adapted for wireless communication in accordance with an IEEE 802.11 protocol.

10. The apparatus of claim 5 , wherein said control logic is adapted to transmit data to said server relating to one or more events that have occurred since a prior synchronization with said server.

11. The apparatus of claim 5 , wherein said control logic is adapted to transmit data to said server relating to a control configuration maintained by the apparatus in response to user input.

12. The apparatus of claim 5 , wherein said control logic is adapted to discover said server by transmitting a query message via said network interface and waiting a predetermined amount of time to receive a reply to said query message.

13. A system, comprising:

an electronic device;

a controller communicatively coupled to said electronic device via a network, said controller adapted to remotely control said electronic device via said network in accordance with a control configuration maintained by said controller in a stand-alone mode; and

a server communicatively coupled to said electronic device and said controller via said network;

wherein said controller is further adapted to discover said server and to transmit data to said server relating to said control configuration maintained by said controller, and

wherein said server is adapted to update a control configuration maintained by said server based on said transmitted data and to subsequently control said electronic device in a client-server mode by issuing commands directly to the electronic device in accordance with said updated control configuration maintained by said server.

14. The system of claim 13 , wherein said network comprises a wireless local area network.

15. The system of claim 13 , wherein said controller is communicatively coupled to said network via an IEEE 802.11 link.

16. The system of claim 13 , wherein said controller comprises one of a personal digital assistant or a web pad.

17. The system of claim 13 , wherein said electronic device comprises one of a computer, a computer peripheral, a television, a video cassette recorder, a digital versatile disc player, a personal video recorder, a compact disc player, a stereo receiver, an electronic thermostat, a UPnP digital media renderer and/or server, a lamp, or a video camera.

18. The system of claim 13 , wherein said controller is adapted to transmit data to said server relating to one or more events that have occurred since a prior synchronization with said server.

19. The system of claim 13 , wherein said controller is adapted to transmit data to said server relating to a control configuration maintained by said controller in response to user input.

20. The system of claim 13 , wherein said controller is adapted to discover said server by transmitting a query message over said network and waiting a predetermined amount of time to receive a reply to said query message.

21. A method for migrating from a client-server mode in which a server remotely controls one or more electronic devices in accordance with a control configuration maintained by the server, to a stand-alone mode in which a controller remotely controls the one or more electronic devices in accordance with a control configuration maintained by the controller, the method comprising:

receiving data from said server relating to the control configuration maintained by the server;

updating the control configuration maintained by the controller based on the received data; and

subsequently controlling the one or more electronic devices in the stand-alone mode, wherein controlling the one or more electronic devices in the stand-alone mode comprises issuing commands by the controller directly to the one or more electronic devices in accordance with said updated control configuration maintained by the controller.

22. The method of claim 21 , further comprising:

transmitting a copy of said data received from said server to a second controller.

23. An apparatus for remotely controlling one or more electronic devices, comprising:

a network interface adapted for communication over a network;

a user interface adapted to receive user input; and

control logic coupled to said network interface and said user interface and adapted to execute commands in response to said user input;

wherein said control logic is further adapted to receive data from a server communicatively coupled to said network and to the one or more electronic devices, said received data relating to a control configuration maintained by said server and used by said server to control the one or more electronic devices in a client-server mode, to update a control configuration maintained by the apparatus based on said received data, and to subsequently control the one or more electronic devices in a stand-alone mode by issuing commands directly to the one or more electronic devices in accordance with said updated control configuration maintained by said apparatus.

24. The apparatus of claim 23 , wherein said control logic is further adapted to transmit a copy of said data received from said server to a second apparatus communicatively coupled to said network.

25. A system, comprising:

an electronic device;

a controller communicatively coupled to said electronic device via a network; and

a server communicatively coupled to said electronic device and said controller via said network, said server adapted to remotely control said electronic device via said network in accordance with a control configuration maintained by said server in a client-server mode;

wherein said controller is adapted to receive data from said server relating to said control configuration maintained by said server, to update a control configuration maintained by said controller based on said received data, and to subsequently control said electronic device in a stand-alone mode by issuing commands directly to the electronic device in accordance with said updated control configuration maintained by said controller.

26. The system of claim 25 , wherein said controller is further adapted to transmit a copy of said data received from said server to a second controller communicatively coupled to said network.

Assignments (4)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 1, 2018
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 044793/0715 →
MERGER Recorded Feb 1, 2018
From: ID8 GROUP R2 STUDIOS, INC.
To: MICROSOFT CORPORATION
Reel/Frame 045212/0930 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2012
From: OPENPEAK INC.
To: ID8 GROUP R2 STUDIOS, INC.
Reel/Frame 027967/0325 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 29, 2006
From: KRZYZANOWSKI, PAUL
To: OPENPEAK INC.
Reel/Frame 018356/0672 →