IP Library Granted Patent US 8,891,499
Granted Patent B2
US 8,891,499 · App. 11/956,469 · Granted Nov 18, 2014

Computer radio with pre-defined configuration set

Inventors: Amer A. Hassan (Kirkland, WA); Adam Sapek (Redmond, WA); Hui Shen (Sammamish, WA); Thomas W. Kuehnel (Seattle, WA); Deyun Wu (Sammamish, WA)
Assignee: Microsoft Corporation
H04W28/18H04W36/26H04W8/245
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 8,891,499
App. No.
11/956,469
Granted
Nov 18, 2014
Kind
B2
Abstract

A computer with a software defined radio that can be configured based on a wireless technology specification. The computer may negotiate with a second computer that also includes a software defined radio to define a set of wireless technology specifications and trigger events indicating when each of the wireless technology specifications is to be used. As the computers communicate, if a trigger event occurs, both computers may reconfigure their software defined radios using a different specification in the set. By appropriately defining the wireless technology specifications in the set and the trigger events, the computers can operate with configurations that allow communication despite events that might otherwise disrupt communication between the computers.

Claims (68)

1. A method of operating a first computing device having a configurable radio, the method comprising:

defining a plurality of configurations for communicating with a second computing device, wherein the defining comprises:

pre-negotiating with the second computing device, based on trigger detection capabilities of the first computing device:

the plurality of configurations, and

at least one trigger for each configuration of the plurality of configurations,

wherein the pre-negotiating includes receiving data from a server and/or from the second computing device, the data including:

a proposed set of configurations; and

at least one trigger for each configuration of the proposed set of configurations;

communicating with the second computing device via the configurable radio while the configurable radio is configured with a first configuration of the pre-negotiated plurality of configurations;

in response to detection of the at least one trigger for a second configuration of the pre-negotiated plurality of configurations, configuring the configurable radio with the second configuration; and

communicating with the second computing device via the configurable radio while the configurable radio is configured with the second configuration,

wherein the pre-negotiated plurality of configurations are defined before detection of the at least one trigger for the second configuration.

2. The method of claim 1 , wherein the pre-negotiated plurality of configurations are configurations that are associated with triggers detectable by the second computing device.

3. The method of claim 1 , wherein each of the at least one trigger for each configuration of the plurality of configurations comprises a definition of a trigger event following which a configuration associated with that at least one trigger is to be employed.

4. The method of claim 1 , wherein receiving the data comprises:

downloading the proposed set of configurations from the server.

5. The method of claim 1 , wherein receiving the data comprises:

receiving a file containing the proposed set of configurations from the second computing device.

6. The method of claim 1 , further comprising:

detecting the at least one trigger for the second configuration of the pre-negotiated plurality of configurations, the detecting comprising:

detecting an error rate above a threshold, the error rate being associated with communications between the first computing device and the second computing device.

7. The method of claim 1 , further comprising:

detecting the at least one trigger for the second configuration of the pre-negotiated plurality of configurations, the detecting comprising:

receiving an indication of a charge level of a battery of the first computing device or the second computing device.

8. The method of claim 1 , wherein communicating with the second computing device while the configurable radio is configured with the second configuration comprises communicating with a different communications protocol than used during the communicating with the second computing device while the configurable radio is configured with the first configuration.

9. The method of claim 1 , wherein communicating with the second computing device while the configurable radio is configured with the second configuration comprises communicating with the same communications protocol and with a different data rate than used during the communicating with the second computing device while the configurable radio is configured with the first configuration.

10. A computer storage memory having stored therein:

a data structure storing configuration transition information; and

computer-executable instructions that, when executed on a first computing device having a configurable radio, control the first computing device to perform operations comprising:

pre-negotiating a plurality of configurations and configuration transition information for communicating with a second computing device based on abilities of the first and second computing devices to detect potential conditions for transitioning to each configuration of the plurality of configurations, wherein the pre-negotiating comprises:

receiving data from a server and/or from the second computing device, the data including:

a proposed set of configurations; and

conditions for transitioning to each configuration of the proposed set of configurations

pre-negotiating, with the second computing device, the plurality of configurations;

pre-negotiating, with the second computing device, the configuration transition information, wherein the configuration transition information defines conditions for transitioning to each configuration of the plurality of configurations; and

storing the pre-negotiated plurality of configurations and the pre-negotiated configuration transition information in the data structure;

communicating with the second computing device via the configurable radio;

detecting a trigger event, after the pre-negotiation of the plurality of configurations;

in response to the detected trigger event, selecting a configuration from the pre-negotiated plurality of configurations based on the configuration transition information;

applying the selected configuration to the configurable radio; and

further communicating with the second computing device via the configurable radio configured with the selected configuration.

11. The computer storage memory of claim 10 , wherein the operations further include:

maintaining the data structure by storing, for a first configuration of the pre-negotiated plurality of configurations, computer-executable instructions that, when executed, configure a component of the configurable radio according to the first configuration.

12. The computer storage memory of claim 11 , wherein the operations further include:

maintaining the data structure by storing, for each of the pre-negotiated plurality of configurations, a value of a parameter of operation of a component of the configurable radio.

13. The computer storage memory of claim 10 , wherein:

the configuration transition information comprises an identification of trigger events for each of the pre-negotiated plurality of configurations; and

selecting the configuration comprises:

selecting a configuration from the data structure, the selected configuration having configuration transition information associated therewith that identifies the detected trigger event.

14. A method of operating a first computing device having a configurable radio, the method comprising:

while the configurable radio is configured with a first configuration, establishing a connection between a data generating or consuming component on the first computing device and a data generating or consuming component on a second computing device, the connection using the configurable radio to transmit and receive data in packets formatted for the connection;

pre-negotiating at least a second configuration for communicating with the second computing device, wherein the pre-negotiating at least the second configuration comprises:

receiving data from a server and/or from the second computing device, the data including:

a proposed set of configurations; and

at least one trigger associated with each configuration of the proposed set of configurations; and

negotiating at least the second configuration with the second computing device;

detecting, by the first computing device, an occurrence of the at least one trigger associated with the second configuration;

in response to the detection of the at least one trigger associated with the second configuration, reconfiguring the configurable radio with the second configuration, wherein the second configuration conforms to a configuration to be used by the second computing device in response to detection of the at least one trigger; and

while the configurable radio is configured with the second configuration, continuing to communicate data over the connection.

15. The method of claim 14 , wherein:

the configurable radio comprises a software defined radio having a packet processing component implemented as a plurality of computer-executable instructions, and

reconfiguring the configurable radio with the second configuration comprises reconfiguring portions of the configurable radio without altering the function of the packet processing component.

16. The method of claim 14 , wherein:

establishing the connection comprises:

establishing a TCP connection using a first wireless communications protocol; and

continuing to communicate data over the connection comprises:

communicating using a TCP protocol using a second wireless communications protocol.

17. The method of claim 16 , wherein the first wireless communications protocol is Wi-Fi and the second wireless communications protocol is WiMAX.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034542/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 31, 2008
From: HASSAN, AMER A.; SAPEK, ADAM; SHEN, HUI; KUEHNEL, THOMAS W.; WU, DEYUN
To: MICROSOFT CORPORATION
Reel/Frame 020449/0982 →
Continuity (1)
Related Publication 20090154432A1 · Jun 18, 2009