Abstract:
A control module reflash system includes a control module located in a vehicle that controls at least one function of the vehicle according to stored vehicle software. An external interface module receives a software file from a source external to the vehicle and receives a part number for the stored vehicle software in the control module. The external interface module retrieves a comparison software file from the source external to the vehicle corresponding to the part number and compares the software file and the comparison software file. The external interface module identifies differences between the software file and the comparison software file, generates a compressed file based on the differences, and provides the compressed file to the control module. The control module generates a flash file based on the received compressed file and the stored vehicle software and modifies the stored vehicle software based on the flash file.
Abstract:
Technical solutions are described for updating a plurality of electronically controlled units (ECU) in a vehicle with multiple communication buses. An example method includes determining an installation order for updating the plurality of ECU based on a priority level assigned to each of the ECU, and a size of each update package for each of the ECU. The method also includes updating the ECU concurrently by installing the respective update packages according to the installation order.
Abstract:
Methods and systems are provided for bypassing an authenticity check for a secure control module. In one embodiment, a method includes: receiving authenticity data from a secure source, wherein the authenticity data includes a signature and an identifier that is unique to the control module; programming the control module with the authenticity data; and bypassing the authenticity check of a control program of the control module based on the authenticity data.
Abstract:
A control module reflash system includes a control module located in a vehicle that controls at least one function of the vehicle according to stored vehicle software. An external interface module receives a software file from a source external to the vehicle and receives a part number for the stored vehicle software in the control module. The external interface module retrieves a comparison software file from the source external to the vehicle corresponding to the part number and compares the software file and the comparison software file. The external interface module identifies differences between the software file and the comparison software file, generates a compressed file based on the differences, and provides the compressed file to the control module. The control module generates a flash file based on the received compressed file and the stored vehicle software and modifies the stored vehicle software based on the flash file.
Abstract:
A software update system for a vehicle is disclosed, as well as a method of determining whether to install a software update at an electronic control unit (ECU) in the vehicle. The method includes the steps of: receiving at the ECU a first signal from a first vehicle system module (VSM) in the vehicle; receiving at the ECU a second signal from a second VSM in the vehicle, wherein the first and second signals each provide an indication that the vehicle is in a stationary state; based on the first and second signals, assessing at the ECU that the vehicle is in the stationary state, wherein the assessment is in accordance with a first predetermined confidence level; and in response to the assessment, authorizing at the ECU an installation of the software update on ECU memory.
Abstract:
Technical solutions are described for updating a plurality of electronically controlled units (ECU) in a vehicle with multiple communication buses. An example method includes determining an installation order for updating the plurality of ECU based on a priority level assigned to each of the ECU, and a size of each update package for each of the ECU. The method also includes updating the ECU concurrently by installing the respective update packages according to the installation order.
Abstract:
A method of re-programming flash memory of a computing device is presented here. Software content having a plurality of software modules can be re-programmed by identifying, from the software modules, a first set of software modules to be programmed by delta programming and a second set of software modules to be programmed by non-delta programming. A first set of sectors of the flash memory is assigned for programming the first set of software modules, and a second set of sectors is assigned for programming the second set of software modules. At least some of the second set of sectors are designated as temporary backup memory space. The first set of sectors is programmed with the first set of software modules, using delta programming and the designated temporary backup memory space. After programming the first set of sectors, the second set of sectors is programmed with the second set of software modules, using non-delta programming.