IP Library Granted Patent US 8,386,589
Granted Patent B2
US 8,386,589 · App. 12/785,273 · Granted Feb 26, 2013

System that provides embedded software to an embedded system

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,386,589
App. No.
12/785,273
Granted
Feb 26, 2013
Kind
B2
Abstract

A system automates the provision of embedded software to an embedded system. The system may include a portable device having a portable device application that provides the embedded software to the embedded system, a communication link coupling the portable device to the embedded system, and an embedded software manager that accesses one or more embedded software components through the communication link.

Claims (47)

1. A system that provides embedded software to an embedded system comprising:

a portable device having a portable device application programmed to provide an embedded software component to the embedded system, where the portable device obtains identification information of the embedded system;

a communication link between the portable device and the embedded system; and

an embedded software manager resident to the embedded system for accessing the embedded software component through the communication link, where the embedded software component is obtained by the portable device from an application store based on the identification information of the embedded system, where the application store comprises an on-line site that supports selection and downloading of application software for the portable device, and where the embedded software component is inexecutable on the portable device.

2. The system of claim 1 , where the embedded software component is transferred to the embedded system for execution by a processor.

3. The system of claim 1 , where the embedded software component is cached on the embedded system.

4. The system of claim 1 , where the embedded software component is accessed from the portable device for execution by a processor in the embedded system.

5. The system of claim 1 , where the embedded software component, when executed by a processor in the embedded system, provides interoperability between the embedded system and the portable device.

6. The system of claim 1 , where the embedded software component, when executed by the processor in the embedded system, maintains compatibility between the embedded system and the portable device.

7. The system of claim 1 , where the embedded software component comprises an update to existing embedded software installed on the embedded system.

8. The system of claim 1 , where the embedded software component is appended to a portable device application for execution by a processor in the portable device.

9. The system of claim 1 , where the embedded software component comprises any of: a plug-in, one or more files, and binary code.

10. The system of claim 1 , where the embedded software component comprises portable code that is independent of the embedded system architecture.

11. The system of claim 1 , where the embedded software component comprises machine code for execution by a processor in the embedded system.

12. The system of claim 1 , where the embedded software manager verifies the publisher or the integrity of the embedded software component prior to execution of the embedded software component.

13. The system of claim 1 , where the embedded software manager verifies compatibility of the embedded software component with the embedded system prior to execution of the embedded software component.

14. The system of claim 1 , where the portable device obtains the embedded software component from an embedded software component server, through a communication connection, responsive to identification indicia or credentials obtained from the embedded system.

15. The system of claim 1 , where the portable device obtains the embedded software component from a local or remote computer, through a communication connection, responsive to identification indicia obtained from the embedded system.

16. The system of claim 1 , where the embedded software component comprises a pre-configured component in the portable device.

17. The method of claim 1 , where the embedded system comprises an in-vehicle infotainment system.

18. The method of claim 1 , where the portable device comprises a smart phone, a mobile phone, a personal digital assistant, or a portable media player.

19. A method that provides embedded software to an embedded system comprising:

establishing a communication link between a portable device and the embedded system;

storing on the portable device an embedded software component that is selected by the portable device from an application store based on credentials of the embedded system, where the application store comprises an on-line site that supports selection and downloading of application software for the portable device; and

transferring, to the embedded system, the embedded software component obtained on the portable device responsive to the credentials of the embedded system, where the embedded software component is executable with a processor in the embedded system, and where the embedded software component is inexecutable on the portable device.

20. The method of claim 19 , where the embedded software component is cached on the embedded system for execution by the processor in the embedded system.

21. The method of claim 19 , where the embedded software component is accessed from the portable device for execution by the processor in the embedded system.

22. The method of claim 19 , where the embedded software component when executed by the processor in the embedded system provides interoperability between the embedded system and the portable device.

23. The method of claim 19 , where the embedded software component when executed by the processor in the embedded system maintains compatibility between the embedded system and the portable device.

24. The method of claim 19 , where the embedded software component is an update to pre-existing embedded software on the embedded system.

25. The method of claim 19 , where the embedded software component is appended to a portable device application for execution by a processor in the portable device.

26. The method of claim 19 , where the embedded software component comprises any of: a plug-in, one or more files, and binary code.

27. The method of claim 19 , where the embedded software component comprises portable code that is independent of the embedded system architecture.

28. The method of claim 19 , where the embedded software component comprises machine code for execution by the processor in the embedded system.

29. The method of claim 19 , where the embedded software manager verifies the publisher or the integrity of the embedded software component prior to execution of the embedded software component.

30. The method of claim 19 , where the embedded system verifies compatibility of the embedded software component with the embedded system prior to execution of the embedded software component.

31. The method of claim 19 , further comprising:

obtaining, by the portable device, the embedded software component from an embedded software component server or remote cluster, through a communication connection, responsive to identification indicia or credentials obtained from the embedded system.

32. The method of claim 19 , further comprising:

obtaining, by the portable device, the embedded software component from a local or remote computer, through a data communication connection, responsive to identification information or credentials obtained from the embedded system.

33. The method of claim 19 , where the embedded software component is pre-configured on the portable device.

34. The method of claim 19 , where the embedded system comprises an in-vehicle infotainment system.

35. The method of claim 19 , where the portable device comprises one of a smart phone, a mobile phone, a personal digital assistant (PDA), and a portable media player.

36. The method of claim 19 , further comprising:

obtaining, on the portable device, the credentials of the embedded system from the embedded system;

disconnecting the communication link between the portable device and the embedded system after obtaining the credentials of the embedded system;

obtaining, on the portable device, the embedded software component after disconnecting the portable device from the embedded system; and reestablishing the communication link between the portable device and the embedded system before accessing the embedded software component from the embedded system.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2020
From: 2236008 ONTARIO INC.
To: BLACKBERRY LIMITED
Reel/Frame 053313/0315 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2014
From: 8758271 CANADA INC.
To: 2236008 ONTARIO INC.
Reel/Frame 032607/0674 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2014
From: QNX SOFTWARE SYSTEMS LIMITED
To: 8758271 CANADA INC.
Reel/Frame 032607/0943 →
CHANGE OF ADDRESS Recorded Feb 27, 2012
From: QNX SOFTWARE SYSTEMS LIMITED
To: QNX SOFTWARE SYSTEMS LIMITED
Reel/Frame 027768/0961 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2011
From: QNX SOFTWARE SYSTEMS GMBH & CO. KG
To: 7801769 CANADA INC.
Reel/Frame 026883/0544 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2011
From: 7801769 CANADA INC.
To: QNX SOFTWARE SYSTEMS LIMITED
Reel/Frame 026883/0553 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 8, 2010
From: KEEFE, DERRICK; CARDAMORE, DAN
To: QNX SOFTWARE SYSTEMS GMBH & CO. KG
Reel/Frame 024500/0704 →