IP Library Granted Patent US 9,639,380
Granted Patent B2
US 9,639,380 · App. 14/546,922 · Granted May 2, 2017

Physical device emulation synchronization

Inventors: Matthew C. Brace (Austin, TX); James D. Keeler (Austin, TX)
Assignee: WEBAD CAMPAIGN ANALYTICS, LP
G06F9/455G06F9/44505
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 9,639,380
App. No.
14/546,922
Granted
May 2, 2017
Kind
B2
Abstract

In one or more embodiments, a system can configure a physical mobile device via configuring a configuration for an emulator of the physical mobile device. For example, a user (e.g., a customer) can request a physical mobile device, and a system can provide the user with an emulation of the physical mobile device, where the user can configure the emulation of the physical mobile device. In one or more embodiments, the user can be provided with the configuration via at least one of a network and a physical delivery of the physical mobile device, configured with the configuration. In one example, the user can execute an emulation of the physical mobile device configured with the configuration, received via the network. In another example, the physical mobile device can be configured with the configuration, and subsequently, the physical mobile device can be physically delivered to the user.

Claims (58)

1. A method, comprising:

receiving a physical configuration of a physical mobile device, wherein the physical configuration consists of one or more of preferences, configurations, and installed applications of a physical mobile device, and wherein the physical mobile device includes a physical processor, a physical memory storing the physical configuration, a physical integrated circuit and instructions stored in the physical memory that when executed by the physical processor causes the physical mobile device to transmit the physical configuration stored in the physical memory to synchronize the physical configuration with a stored configuration stored in a memory medium;

synchronizing the stored configuration in the memory medium with the received physical configuration to generate a synchronized configuration, which includes synchronization with the one or more of the preferences, configurations, and installed applications of a physical mobile device provided in the physical configuration of the physical mobile device, and storing the synchronized configuration in the memory medium;

allocating an emulated mobile device that emulates the physical mobile device;

emulating the emulated mobile device as an emulation of the physical mobile device, where the emulated mobile device has an emulated configuration that is configured with the synchronized configuration, and wherein the emulated mobile device comprises an emulated processor and an emulated memory coupled to the emulated processor that stores at least a portion of the emulated configuration and executable instructions from an ISA (instruction set architecture), wherein the emulated processor executes the executable instructions from the ISA stored in the emulated memory and further the emulated processor executes a data generating process that emulates an operating system associated with one or more functionalities of the physical mobile device;

updating the emulated configuration in response to the emulated processor executing the executable instructions and/or the data generating process to generate an updated emulated configuration;

synchronizing the updated emulated configuration with the synchronized configuration in the memory medium to generate an updated synchronized configuration and storing the updated synchronized configuration in the memory medium; and

transmitting the updated synchronized configuration stored in the memory medium to the physical mobile device, wherein the physical mobile device utilizes the updated synchronized configuration to synchronize with the physical configuration of the physical mobile device.

2. The method of claim 1 , further comprising:

the data generating process providing data that simulates GSM data.

3. The method of claim 1 , further comprising:

configuring the physical mobile device with the updated synchronized configuration.

4. The method of claim 1 , wherein storing the synchronized configuration in the memory medium includes storing the synchronized configuration in a system independent format.

5. The method of claim 1 , wherein the physical mobile device includes an in-vehicle computer system.

6. The method of claim 1 , wherein the configuration includes at least one of a sound recording, contact information, login information, online account information, a bookmark, an ebook, social networking site information, and a mobile device application.

7. The method of claim 1 , wherein receiving the physical configuration includes receiving, via a network, the physical configuration.

8. The method of claim 1 , wherein the physical integrated circuit includes at least one of a global positioning system (GPS) device, a GSM (global system for mobile communications) telephone network interface device, a code division multiple access (CDMA) telephone network interface device, a graphics processing unit, a graphics processing unit, a WiFi interface device, and a Bluetooth device.

9. The method of claim 1 , wherein the physical mobile device includes at least one of wireless telephone, a digital music player, and a wearable device.

10. A system, comprising:

a processor;

a memory coupled to the processor;

a network interface coupled to the processor and configured to be coupled to a network;

wherein the memory includes instructions that when executed by the processor, the system:

receiving a physical configuration of a physical mobile device, wherein the physical configuration consists of one or more of preferences, configurations, and installed applications of a physical mobile device, and wherein the physical mobile device includes a physical processor, a physical memory storing the physical configuration, a physical integrated circuit and instructions stored in the physical memory that when executed by the physical processor causes the physical mobile device to transmit the physical configuration stored in the physical memory to synchronize the physical configuration with a stored configuration stored in a memory medium;

synchronizing the stored configuration in the memory medium with the received physical configuration to generate a synchronized configuration, which includes synchronization with the one or more of the preferences, configurations, and installed applications of a physical mobile device provided in the physical configuration of the physical mobile device, and storing the synchronized configuration in the memory medium;

allocating an emulated mobile device that emulates the physical mobile device;

emulating the emulated mobile device as an emulation of the physical mobile device, where the emulated mobile device has an emulated configuration that is configured with the synchronized configuration, and wherein the emulated mobile device comprises an emulated processor and an emulated memory coupled to the emulated processor that stores at least a portion of the emulated configuration and executable instructions from an ISA (instruction set architecture), wherein the emulated processor executes the executable instructions from the ISA stored in the emulated memory and further the emulated processor executes a data generating process that emulates an operating system associated with one or more functionalities of the physical mobile device;

updating the emulated configuration in response to the emulated processor executing the executable instructions and/or the data generating process to generate an updated emulated configuration;

synchronizing the updated emulated configuration with the synchronized configuration in the memory medium to generate an updated synchronized configuration and storing the updated synchronized configuration in the memory medium; and

transmitting the updated synchronized configuration stored in the memory medium to the physical mobile device, wherein the physical mobile device utilizes the updated synchronized configuration to synchronize with the physical configuration of the physical mobile device.

11. The system of claim 10 , wherein

the data generating process providing data that simulates GSM data.

12. The system of claim 10 , wherein the memory further includes instructions that when executed by the processor, the system:

configures the physical mobile device with the updated synchronized configuration.

13. The system of claim 10 , wherein storing the synchronized configuration in the memory medium includes storing the synchronized configuration in a system independent format.

14. The system of claim 10 , wherein the physical mobile device includes an in-vehicle computer system.

15. The system of claim 10 , wherein the configuration includes at least one of a sound recording, contact information, login information, online account information, a bookmark, an ebook, social networking site information, and a mobile device application.

16. The system of claim 10 , wherein when the system transmits the physical configuration, the system provides, via a network, the physical configuration.

17. The system of claim 10 , wherein the physical integrated circuit includes at least one of a global positioning system (GPS) device, a GSM (global system for mobile communications) telephone network interface device, a code division multiple access (CDMA) telephone network interface device, a graphics processing unit, a graphics processing unit, a WiFi interface device, and a Bluetooth device.

18. The system of claim 10 , wherein the physical mobile device includes at least one of wireless telephone, a digital music player, and a wearable device.

19. A non-transient computer-readable memory device comprising instructions, that when the instructions are executed by a processor of a system, the system:

receiving a physical configuration of a physical mobile device, wherein the physical configuration consists of one or more of preferences, configurations, and installed applications of a physical mobile device, and wherein the physical mobile device includes a physical processor, a physical memory storing the physical configuration, a physical integrated circuit and instructions stored in the physical memory that when executed by the physical processor causes the physical mobile device to transmit the physical configuration stored in the physical memory to synchronize the physical configuration with a stored configuration stored in a memory medium;

synchronizing the stored configuration in the memory medium with the received physical configuration to generate a synchronized configuration, which includes synchronization with the one or more of the preferences, configurations, and installed applications of a physical mobile device provided in the physical configuration of the physical mobile device, and storing the synchronized configuration in the memory medium;

allocating an emulated mobile device that emulates the physical mobile device;

emulating the emulated mobile device as an emulation of the physical mobile device, where the emulated mobile device has an emulated configuration that is configured with the synchronized configuration, and wherein the emulated mobile device comprises an emulated processor and an emulated memory coupled to the emulated processor that stores at least a portion of the emulated configuration and executable instructions from an ISA (instruction set architecture), wherein the emulated processor executes the executable instructions from the ISA stored in the emulated memory and further the emulated processor executes a data generating process that emulates an operating system associated with one or more functionalities of the physical mobile device;

updating the emulated configuration in response to the emulated processor executing the executable instructions and/or the data generating process to generate an updated emulated configuration;

synchronizing the updated emulated configuration with the synchronized configuration in the memory medium to generate an updated synchronized configuration and storing the updated synchronized configuration in the memory medium; and

transmitting the updated synchronized configuration stored in the memory medium to the physical mobile device, wherein the physical mobile device utilizes the updated synchronized configuration to synchronize with the physical configuration of the physical mobile device.

20. The non-transient computer-readable memory device of claim 19 , wherein

the data generating process providing data that simulates GSM data.

21. The non-transient computer-readable memory device of claim 19 , wherein the non-transient computer-readable memory device further includes instructions that when executed by the processor, the system:

configures the physical mobile device with the updated synchronized configuration.

22. The non-transient computer-readable memory device of claim 19 , wherein storing the synchronized configuration in the memory medium includes storing the synchronized configuration in a system independent format.

23. The non-transient computer-readable memory device of claim 19 , wherein the physical mobile device includes an in-vehicle computer system.

24. The non-transient computer-readable memory device of claim 19 , wherein the configuration includes at least one of a sound recording, contact information, login information, online account information, a bookmark, an ebook, social networking site information, and a mobile device application.

25. The non-transient computer-readable memory device of claim 19 , wherein when the system transmits the physical configuration, the system provides, via a network, the physical configuration.

26. The non-transient computer-readable memory device of claim 19 , wherein the physical integrated circuit includes at least one of a global positioning system (GPS) device, a GSM (global system for mobile communications) telephone network interface device, a code division multiple access (CDMA) telephone network interface device, a graphics processing unit, a graphics processing unit, a WiFi interface device, and a Bluetooth device.

27. The non-transient computer-readable memory device of claim 19 , wherein the physical mobile device includes at least one of wireless telephone, a digital music player, and a wearable device.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE SERIAL NUMBER FROM 14/456,922 TO 14/546,922 PREVIOUSLY RECORDED ON REEL 041745 FRAME 0325. ASSIGNOR(S) HEREBY CONFIRMS THE CORRECTIVE ASSIGNMENT. Recorded Oct 15, 2018
From: INVODO, INC.
To: WEBAD CAMPAIGN ANALYTICS LP
Reel/Frame 047239/0263 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2017
From: INVODO, INC.
To: WEBAD CAMPAIGN ANALYTICS LP
Reel/Frame 041745/0325 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 6, 2015
From: BRACE, MATTHEW C.; KEELER, JAMES D.
To: INVODO, INC.
Reel/Frame 035099/0514 →
Continuity (2)
Provisional Application 61905608 · Nov 18, 2013
Related Publication 20150149749A1 · May 28, 2015