IP Library Granted Patent US 9,563,418
Granted Patent B1
US 9,563,418 · App. 14/670,257 · Granted Feb 7, 2017

Communication endpoints, software update servers, and related methods

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,563,418
App. No.
14/670,257
Granted
Feb 7, 2017
Kind
B1
Abstract

Communication endpoints, software update servers, and related methods are disclosed. A communication endpoint includes a data storage device including a boot loader partition, a boot loader settings partition, and a plurality of combo image partitions. A method includes receiving an update package including a new combo image and one or more repair modules configured to diagnose and repair at least one of a boot loader, boot loader settings, and a file system of the communication endpoint. The method also includes replacing a combo image stored on one of the plurality of combo image partitions with the new combo image, and executing at least one of the one or more repair modules. A software update server includes a data storage device including the update package, and communication elements configured to transmit the update package to the communication endpoint.

Claims (77)

1. A method of operating a software update system for updating software on a communication endpoint, the method comprising:

providing a data storage device on the communication endpoint including a boot loader partition comprising a boot loader, a boot loader settings partition comprising boot loader settings, a first combo image partition comprising a combo image, a second combo image partition comprising a copy of the combo image, and an extended partition configured to serve as a storage placeholder in case more data storage space is needed, wherein the combo image includes at least a secondary boot loader, a root file system, and an operating system kernel;

operating a file system on the communication endpoint from the combo image based on a successful boot from either a first combo image partition or a second combo image partition of the communication endpoint, the successful boot including:

attempting to boot the communication endpoint using the combo image from the first combo image partition; and

attempting to boot the communication endpoint using the copy of the combo image from the second combo image partition responsive to a failure of the first combo image partition;

transmitting an encrypted update package from a software update server to the communication endpoint for updating and repairing the at least one of software or firmware stored on the communication endpoint, the encrypted update package including:

a new combo image including a combination of a new secondary boot loader, a new root file system, and a new operating system kernel; and

one or more repair modules configured to diagnose and repair damaged data and files with undamaged replacement data and files with undamaged replacement data and files for at least one of a boot loader, boot loader settings, and a file system of the communication endpoint;

receiving and decrypting the update package including the new combo image at the communication endpoint;

restructuring a size of each of the first combo image partition, the second combo image partition, and the extended partition responsive to the new combo image having a greater size than the first combo image partition and the second combo image partition;

replacing, with the control circuitry, the combo image with the new combo image in the first combo image partition of the data storage device responsive to determining that the copy of the combo image from the second combo image partition was used as for the most recent successful boot;

replacing, with the control circuitry, the copy of the combo image with the new combo image in the second combo image partition of the data storage device responsive to determining that the combo image from the first combo image partition was used as for the most recent successful boot; and

executing, with the control circuitry, at least one of the one or more repair modules to diagnose and repair damaged data and files with undamaged replacement data and files in at least one of the boot loader, the boot loader settings, and the file system of the communication endpoint.

2. The method of claim 1 , wherein executing at least one of the one or more repair modules comprises at least one of repairing and replacing damaged data and files with undamaged replacement data and files in at least one of the boot loader and the boot loader settings.

3. The method of claim 1 , wherein executing at least one of the one or more repair modules comprises performing execution tests of executable files stored in the data storage device and repairing and replacing the executable files.

4. A software update system comprising:

a software update server including:

a data storage device including an update package comprising:

a new combo image configured to replace a combo image stored by a communication endpoint, the new combo image comprising a combination of a new secondary boot loader, a new root file system, and a new operating system kernel for the communication endpoint; and

one or more repair modules configured to instruct the communication endpoint to diagnose and repair damaged data and files with undamaged replacement data and files for at least one of a boot loader, boot loader settings, and a file system of the communication endpoint; and

communication elements configured to encrypt and transmit the update package to the communication endpoint through one or more networks; and

the communication endpoint including:

a data storage device including:

a boot loader partition comprising a boot loader;

a boot loader settings partition comprising boot loader settings;

a first combo image partition comprising a combo image including a secondary boot loader, a root file system, and an operating system kernel;

a second combo image partition comprising a copy of the combo image;

an extended partition configured to serve as a storage placeholder in case more data storage space is needed;

communication elements configured to receive an encrypted update package from a software update server through the one or more networks; and

control circuitry operably coupled to the data storage device and the communication elements, the control circuitry configured to:

attempt to boot up using the combo image stored in the first combo image partition;

attempt to boot up using the copy of the combo image stored in the second combo image partition responsive to a failure of the first combo image partition;

receive and decrypt the update package;

select one of the first combo image partition and the second combo image partition that was not the last combo image partition used during a successful boot up, and replace the combo image stored in the selected one of the first combo image partition and the second combo image partition with the new combo image from the update package;

restructure a size of each of the first combo image partition, the second combo image partition, and the extended partition responsive to the new combo image having a greater size than the first combo image partition and the second combo image partition;

execute the at least one repair module and diagnose and repair damaged data and files with undamaged replacement data and files.

5. The software update system of claim 4 , wherein the at least one repair module includes a file system repair module configured to diagnose and repair damaged data and files with undamaged replacement data and files in the root file system of the communication endpoint.

6. The software update system of claim 4 , wherein control circuitry of the communication endpoint is further configured to restructure a size of the boot loader partition, and the boot loader settings partition responsive to additional space being needed when updating installing the new combo image to the communication endpoint.

7. The software update system of claim 4 , wherein the at least one repair module of the is configured to replace the boot loader with a new boot loader responsive to at least one of diagnosing the boot loader with irreparable damage, and failing to repair the boot loader.

8. The software update system of claim 4 , wherein the update package further includes new files, and wherein the control circuitry is further configured to store the new files in the appropriate ones of the boot loader partition, the boot loader settings partition, and a user data partition.

9. The software update system of claim 8 , wherein the new files include a new boot loader, and wherein the control circuitry is further configured to:

determine a unique identifier of the communication endpoint;

replace the boot loader with the new boot loader; and

write the unique identifier of the communication endpoint to the new boot loader.

10. The software update system of claim 9 , wherein the unique identifier of the communication endpoint comprises a media access control address.

11. The software update system of claim 4 , wherein the boot loader is configured to enable the control circuitry to address at least sixteen (16) gigabytes of storage of the data storage device.

12. The software update system of claim 4 , wherein the boot loader is configured to enable the control circuitry to address at least substantially all storage of the data storage device.

13. The software update system of claim 4 , wherein the data storage device comprises a flash memory device.

14. The software update system of claim 4 , wherein the communication endpoint comprises a text-captioned phone configured to establish a voice communication session with a far-end and a remote captioning service and to display text captions received from the remote captioning service during the voice communication session.

15. The software update system of claim 4 , wherein the update package includes a manifest file comprising a checksum configured to verify the integrity of the new combo image and the one or more repair modules.

16. The software update system of claim 4 , wherein the one or more repair modules include at least one boot loader repair module configured to, when executed by the communication endpoint, diagnose and repair the boot loader of the communication endpoint.

17. The software update system of claim 4 , further comprising an encryptor operably coupled to the data storage device and configured to encrypt the update package to obtain an encrypted update package, wherein the communication elements are configured to transmit the encrypted update package to the communication endpoint.

18. The software update system of claim 4 , wherein the one or more repair modules include a file system repair module configured to instruct the communication endpoint to at least one of diagnose, repair, and replace at least one file system of the communication endpoint.

19. The software update system of claim 4 , wherein the one or more repair modules are further configured to generate a report and transmit the report to the software update server, the report including logs of processes performed by the repair modules selected from the group consisting of diagnosis and repair logs, file installation logs, and information regarding the combo image replaced by the new combo image.

20. The software update system of claim 4 , wherein the data storage device of the communication endpoint is configured to store the update package and thereafter automatically install the update package after a predetermined period of time has elapsed after a most recent call for the communication endpoint.

21. The software update system of claim 4 , wherein the one or more repair modules are configured to request undamaged replacement data and files from the software update server over the one or more networks during repair and after the update package has been stored by the communication endpoint.

22. A text-captioned phone comprising:

a data storage device including:

a boot loader partition comprising a boot loader;

a boot loader settings partition comprising boot loader settings; and

a first combo image partition comprising a combo image including a secondary boot loader, a root file system, and an operating system kernel;

a second combo image partition comprising a copy of the combo image;

communication elements configured to receive an update package from a software update server through one or more networks, the update package including:

a file manifest including a checksum configured to verify the integrity of the update package;

a new combo image configured to replace the combo image stored in the first combo image partition and the second combo image partition, wherein the new combo image includes at least one of a new secondary boot loader, a new root file system, and a new operating system kernel;

a boot loader and settings repair module configured to at least one of diagnose, repair, and replace at least one of the boot loader and the boot loader settings; and

a file system repair module configured to at least one of diagnose, repair, and replace a file system of the text-captioned phone; and

control circuitry operably coupled to the data storage device and the communication elements, the control circuitry configured to:

attempt to boot using the combo image from the first combo image partition;

attempt to boot using the copy of the combo image from the second combo image partition responsive to a failure of the first combo image partition;

select one of the first combo image partition and the second combo image partition based on which of the first combo image partition or the second combo image partition was not used as for the most recent successful boot;

replace the combo image stored in the selected one of the first combo image partition and the second combo image partition with the new combo image;

execute the boot loader and settings repair module and the file system repair module; and

enable a user of the text-captioned phone to participate in substantially real-time communication sessions with an audibly capable user of a far-end audio endpoint through a first communication network with the assistance of a text-captioned relay service configured to communicate with the text-captioned phone through a second communication network.

23. The text-captioned phone of claim 22 , wherein the control circuitry is further configured to:

attempt to boot using the new combo image in the first combo image partition; and

attempt to boot using the combo image in the second combo image partition responsive to a failure of the boot using the new combo image.

Assignments (14)
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY DATA THE NAME OF THE LAST RECEIVING PARTY SHOULD BE CAPTIONCALL, LLC PREVIOUSLY RECORDED ON REEL 67190 FRAME 517. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST. Recorded May 31, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: SORENSON IP HOLDINGS, LLC; SORENSON COMMUNICATIONS, LLC; CAPTIONCALL, LLC
Reel/Frame 067591/0675 →
SECURITY INTEREST Recorded Apr 23, 2024
From: SORENSON COMMUNICATIONS, LLC; INTERACTIVECARE, LLC; CAPTIONCALL, LLC
To: OAKTREE FUND ADMINISTRATION, LLC, AS COLLATERAL AGENT
Reel/Frame 067573/0201 →
RELEASE OF SECURITY INTEREST Recorded Apr 23, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
To: SORENSON IP HOLDINGS, LLC; SORENSON COMMUNICATIONS, LLC; CAPTIONALCALL, LLC
Reel/Frame 067190/0517 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2021
From: CORTLAND CAPITAL MARKET SERVICES LLC
To: SORENSON COMMUNICATIONS, LLC; CAPTIONCALL, LLC
Reel/Frame 058533/0467 →
JOINDER NO. 1 TO THE FIRST LIEN PATENT SECURITY AGREEMENT Recorded Apr 22, 2021
From: SORENSON IP HOLDINGS, LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 056019/0204 →
LIEN Recorded Feb 11, 2020
From: SORENSON COMMUNICATIONS, LLC; CAPTIONCALL, LLC
To: CORTLAND CAPITAL MARKET SERVICES LLC
Reel/Frame 051894/0665 →
RELEASE OF SECURITY INTEREST Recorded May 8, 2019
From: U.S. BANK NATIONAL ASSOCIATION
To: SORENSON COMMUNICATIONS, LLC; SORENSON IP HOLDINGS, LLC; CAPTIONCALL, LLC; INTERACTIVECARE, LLC
Reel/Frame 049115/0468 →
RELEASE OF SECURITY INTEREST Recorded May 7, 2019
From: JPMORGAN CHASE BANK, N.A.
To: SORENSON COMMUNICATIONS, LLC; SORENSON IP HOLDINGS, LLC; CAPTIONCALL, LLC; INTERACTIVECARE, LLC
Reel/Frame 049109/0752 →
PATENT SECURITY AGREEMENT Recorded Apr 29, 2019
From: SORENSEN COMMUNICATIONS, LLC; CAPTIONCALL, LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 050084/0793 →
SECURITY INTEREST Recorded Apr 30, 2018
From: SORENSON COMMUNICATIONS, LLC; INTERACTIVECARE, LLC; CAPTIONCALL, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 046416/0166 →
SECURITY INTEREST Recorded Apr 12, 2017
From: SORENSON IP HOLDINGS, LLC; CAPTIONCALL, LLC
To: U.S. BANK NATIONAL ASSOCIATION
Reel/Frame 042242/0001 →
SECURITY INTEREST Recorded Apr 9, 2017
From: SORENSON IP HOLDINGS, LLC; CAPTIONCALL, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 042229/0120 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 23, 2017
From: CAPTIONCALL, LLC
To: SORENSON IP HOLDINGS, LLC
Reel/Frame 041711/0929 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2015
From: WALTON, SEAN
To: CAPTIONCALL, LLC
Reel/Frame 035316/0656 →