Search

US-12619418-B2 - Software update device, software update system, and software update method

US12619418B2US 12619418 B2US12619418 B2US 12619418B2US-12619418-B2

Abstract

A software update device updates software for an in-vehicle control device mounted in a vehicle. An information acquisition unit acquires, from a server provided outside the vehicle, update process information. The output unit outputs consent request information. The execution unit executes the update process. The calculation unit calculates an estimated time required for the update. The communication status acquisition unit acquires communication status information related to communication status with the server. The correction unit corrects the estimated time based on the communication status information. The notification unit outputs information on the corrected estimated time. The notification unit, when the corrected estimated time is shorter than the estimated time before correction, does not output information on the corrected estimated time.

Inventors

  • Mitsuhiko KIKUCHI
  • Koji Morita
  • Yoshimori SHIZUKA
  • Eisuke OHASHI
  • Masaaki Uzumi
  • Muneeswaran Ayyappan
  • Yohei KAIEDA
  • Takayuki Inoue
  • Hidetoshi Hayashi

Assignees

  • NISSAN MOTOR CO., LTD.

Dates

Publication Date
20260505
Application Date
20210727

Claims (14)

  1. 1 . A software update device configured to update software for an in-vehicle control device mounted in a vehicle, the software update device comprising: an information acquisition unit configured to acquire, from a server provided outside the vehicle, update process information related to an update of the software; an output unit configured to output consent request information for asking a user whether to consent to the update of the software; an execution unit configured to execute an update process for the software according to response information that is a response to the consent request information from the user; a calculation unit configured to calculate an estimated time required for the update; and a communication status acquisition unit configured to acquire communication status information related to a communication status with the server, wherein the communication status information includes strengths of the connection to the server and comprises connection statuses of different degrees; a correction unit configured to correct the estimated time based on the communication status information; and a notification unit configured to output information on the corrected estimated time, wherein the notification unit is configured to, when the corrected estimated time is shorter than the estimated time before correction, not output information on the corrected estimated time.
  2. 2 . The software update device according to claim 1 , wherein the information acquisition unit is configured to acquire the estimated time from the server.
  3. 3 . The software update device according to claim 1 , comprising a calculation unit configured to calculate the estimated time based on a size of data used to update the software.
  4. 4 . The software update device according to claim 1 , further comprising: a control unit configured to determine a target program to be executed by the in-vehicle control device, based on the estimated time, wherein the in-vehicle control device includes a first memory that stores a first program for implementing an old version of the software, the execution unit includes: an installation execution unit configured to execute an installation process for writing a second program for implementing a new version of the software to the first memory after deleting the first program from the first memory; and an activation execution unit configured to execute an activation process for loading the second program written in the first memory, and the control unit is configured to, when the update process is not completed within the estimated time, execute a rollback process for the in-vehicle control device.
  5. 5 . The software update device according to claim 1 , further comprising: a control unit configured to determine a target program to be executed by the in-vehicle control device, based on the estimated time, wherein the in-vehicle control device includes a first memory that stores a first program for implementing an old version of the software, and a second memory, the execution unit includes: an installation execution unit configured to write a second program for implementing a new version of the software to the second memory; and an activation execution unit configured to execute an activation process for changing a program load destination from the first memory to the second memory, and the control unit is configured to store the second program written in the second memory, as a process for the update process being not completed within the estimated time.
  6. 6 . The software update device according to claim 5 , wherein the control unit is configured to execute a rollback process for the in-vehicle control device, as a process for the update being not completed within the estimated time.
  7. 7 . The software update device according to claim 1 , comprising a measurement unit configured to measure an actual required time required from start to completion of the update process, wherein the output unit is configured to output information on the actual required time to the server.
  8. 8 . The software update device according to claim 1 , wherein the estimated time required for update is included in a distribution package.
  9. 9 . The software update device according to claim 1 , wherein the calculation unit is provided in the vehicle.
  10. 10 . A software update system comprising: a software update device configured to update software for an in-vehicle control device mounted in a vehicle, the software update device comprising: an information acquisition unit configured to acquire, from a server provided outside the vehicle, update process information related to an update of the software; an output unit configured to output consent request information for asking a user whether to consent to the update of the software; an execution unit configured to execute an update process for the software according to response information that is a response to the consent request information from the user; a communication status acquisition unit configured to acquire communication status information related to a communication status with the server, wherein the communication status information includes strengths of the connection to the server and comprises connection statuses of different degrees; a correction unit configured to correct, based on the communication status information, an estimated download time required to complete download of the update process information from the server, of the estimated time required for the update; a notification unit configured to output information on the estimated time after the correction; and a control unit configured to determine a target program to be executed by the in-vehicle control device, based on the estimated time before correction or after correction, wherein the control unit is configured to: cause, when the update is not completed within the estimated time before the correction or after the correction, the in-vehicle control device to execute a program corresponding to a pre-update software; and cause, when the update is completed within the estimated time before the correction or after the correction, the in-vehicle control device to execute a program corresponding to an updated software; and the server.
  11. 11 . The software update system according to claim 10 , wherein the server is configured to calculate the estimated time based on at least one of a size of data used to update the software and a type of the in-vehicle control device.
  12. 12 . A software update method for updating, by a controller, software for an in-vehicle control device mounted in a vehicle, the software update method comprising: acquiring, from a server provided outside the vehicle, update process information related to an update of the software; outputting consent request information for asking a user whether to consent to the update of the software; executing an update process for the software according to response information that is a response to the consent request information from the user; calculating an estimated time required for the update; and acquiring communication status information related to a communication status with the server, wherein the communication status information includes strengths of the connection to the server and comprises connection statuses of different degrees: correcting the estimated time based on the communication status information; and outputting information on the corrected estimated time, wherein a step of outputting the information on the corrected estimated time includes a step of not output information on the corrected estimated time when the corrected estimated time is shorter than the estimated time before correction.
  13. 13 . A software update device configured to update software for an in-vehicle control device mounted in a vehicle, the software update device comprising: an information acquisition unit configured to acquire, from a server provided outside the vehicle, update process information related to an update of the software; an output unit configured to output consent request information for asking a user whether to consent to the update of the software; an execution unit configured to execute an update process for the software according to response information that is a response to the consent request information from the user; a communication status acquisition unit configured to acquire communication status information related to a communication status with the server, wherein the communication status information includes strengths of the connection to the server and comprises connection statuses of different degrees: a correction unit configured to correct, based on the communication status information, an estimated download time required to complete download of the update process information from the server, of the estimated time required for the update; a notification unit configured to output information on the estimated time required for the update after the correction; and a control unit configured to determine a target program to be executed by the in-vehicle control device, based on the estimated time required for the update before correction or after correction, wherein the notification unit is configured to, when the estimated time after the correction is longer than the estimated time required for the update before correction by a predetermined threshold time or more, output information on the estimated time required for the update after the correction, and the control unit is configured to cause, when the update is not completed within the estimated time required for the update before the correction or after the correction, the in-vehicle control device to execute a program corresponding to a pre-update software, and cause, when the update is completed within the estimated time required for the update before the correction or after the correction, the in-vehicle control device to execute a program corresponding to an updated software.
  14. 14 . The software update device according to claim 1 , further comprising: a control unit configured to determine a target program to be executed by the in-vehicle control device, based on the estimated time required for the update, wherein the control unit is configured to: cause, when the update is not completed within the estimated time required for the update, the in-vehicle control device to execute a program corresponding to a pre-update software; and cause, when the update is completed within the estimated time required for the update, the in-vehicle control device to execute a program corresponding to an updated software.

Description

TECHNICAL FIELD The present invention relates to a software update device, a software update system, and a software update method. BACKGROUND ART A conventional information processing terminal is known that can automatically update software at a timing according to a user's preference (Patent Document 1). This information processing terminal can also be used as an in-vehicle terminal mounted on a vehicle. PRIOR ART DOCUMENT Patent Document Patent Document 1: Japanese Patent Application Publication No. 2016-38634 SUMMARY OF INVENTION Problems to be Solved by Invention Since the vehicle cannot be started while the process for an update of software is being executed, the user cannot use the vehicle. In the above-mentioned information processing terminal, there is a problem in that when an error occurs that prevents the update of software from being completed, an in-vehicle control device cannot determine which software is to be executed, not allowing the user to use the vehicle. The problem to be solved by the present invention is to provide a software update device, a software update system, and a software update method that allow a user to use a vehicle even when an error occurs that prevents an update of software from being completed. Means for Solving Problems The present invention solves the above problem by acquiring, from a server provided outside a vehicle, update process information related to an update of software of an in-vehicle control device; outputting consent request information for asking a user whether to consent to the update of software; outputting an estimated time required to update the software; and executing an update process according to response information that is a response to the consent request information from the user. Effects of Invention According to the present invention, since the software update process can be executed based on the estimated time required to update the software and the user's response information, the user can use the vehicle. BRIEF DESCRIPTION OF DRAWINGS FIG. 1 is a block diagram illustrating an example of a software update system including a software update device according to a first embodiment. FIG. 2 is an explanatory diagram for explaining a flow of an update of software by OTA. FIG. 3 is an explanatory diagram for explaining an update of software by OTA depending on the memory configuration of an ECU. FIG. 4 is an example of functional blocks included in a controller of the software update device illustrated in FIG. 1. FIG. 5 is a flowchart of a software update method according to the first embodiment. FIG. 6 is an example of functional blocks included in a controller of a software update device according to a second embodiment. FIG. 7 is a flowchart of a software update method according to the second embodiment. MODE(S) FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of a software update device, a software update system, and a software update method according to the present invention will be described with reference to the drawings. First Embodiment A software update device 10 according to the present embodiment is provided as a part of a software update system 100, as illustrated in FIG. 1. FIG. 1 is a block diagram illustrating an example of the software update system 100 according to the present embodiment. The software update system 100 is a system that can update software for vehicle control, diagnosis, and the like, which are executed by an electronic control unit (hereinafter referred to as ECU) of a vehicle 1 by Over-The-Air (OTA). Such an update of software by OTA is also referred to as Firmware Over-The-Air (FOTA). The software for the ECU is implemented by a microcomputer included in the ECU executing a program. In the present embodiment, a case will be described by way of example in which the program to be executed by the microcomputer of the ECU is wirelessly rewritten by a wireless update of software for the ECU. However, the software update system 100 can also be applied to a case of wirelessly rewriting data used in various software, such as map data used in a navigation system of the vehicle 1 and control parameters used in the ECU, for example. Further, for an ECU using a field programmable gate array (FPGA), the software update system 100 can also be applied to a case of wirelessly rewriting the functions (logics) of the FPGA. Further, although one vehicle is illustrated as the vehicle 1 in FIG. 1, the software update system 100 is a system that can update software for a plurality of vehicles 1. Further, in the present embodiment, “an update of software for the ECU” means that the version of the software for the ECU is changed to a new version, that is, a program to be executed by the microcomputer is changed to a new version. Further, a wireless update of software includes, in addition to wirelessly acquiring a new version of the program itself from outside the vehicle 1 and rewriting it, wirelessly acquiring various dat