Patent ID: 8458689
Filing Date: 2013-06-04
Classification: G06F

Abstract:
1. A method for upgrading software in an engine controller, the method comprising: placing an engine controller reprogramming apparatus in data communication with the engine controller and, at the engine controller reprogramming apparatus; determining a version of current software in the engine controller and requesting from the engine controller and storing in the engine controller reprogramming apparatus a first identification number from the engine controller; identifying one or more data blocks of upgraded software associated with the version of current software, the one or more data blocks constituting less than all of the version of current software; and replacing one or more data blocks of the current software with the one or more data blocks of upgraded software; wherein replacing the one or more data blocks of current software comprises: uploading from the engine controller to the engine controller reprogramming apparatus an image of the current software and storing the image of the current software in a memory of the engine controller reprogramming apparatus; at the engine controller reprogramming apparatus, creating a modified version of the current software at the engine controller reprogramming apparatus by replacing one or more data blocks of the image with the one or more data blocks of upgraded software and retaining at least some data blocks of the image in the modified version of the current software while retaining the uploaded image of the current software in the memory for restoration and downloading a data stream from the engine controller reprogramming apparatus into the engine controller, the data stream comprising the modified version of the current software including the one or more data blocks of upgraded software; and monitoring status information and, if an interruption occurs, using the status information to resume replacing the one or more data blocks of the current software.