SERVER, SOFTWARE MANAGEMENT SYSTEM, SOFTWARE MANAGEMENT METHOD, AND NON-TRANSITORY STORAGE MEDIUM
A server that is configured to manage software for electronic equipment installed in a vehicle, the server includes: storage in which first software is stored; and one or more processors configured to transmit the first software to the vehicle via a wireless communication device. The one or more processors are configured to determine whether activation processing of second software transmitted from an external server to the vehicle is completed at the electronic equipment, and transmit, when the activation processing of the second software is not completed, the first software to the vehicle after the activation processing of the second software is completed.
Latest Toyota Patents:
- WIRELESS COMMUNICATION CONTROL METHOD, RECEIVING STATION, AND NON-TRANSITORY STORAGE MEDIUM
- COMMUNICATION DEVICE AND VIDEO TRANSMISSION SYSTEM
- ELECTRICALLY HEATING SUPPORT
- NEO 360: NEURAL FIELDS FOR SPARSE VIEW SYNTHESIS OF OUTDOOR SCENES
- MAGNET ARRANGEMENT METHOD, METHOD FOR MANUFACTURING ROTOR, MAGNET ARRANGEMENT JIG, AND MAGNET INDUCTION APPARATUS
This application claims priority to Japanese Patent Application No. 2022-177455 filed on Nov. 4, 2022 incorporated herein by reference in its entirety.
BACKGROUND 1. Technical FieldThe present disclosure relates to a server, a software management system, a software management method, and a non-transitory storage medium.
2. Description of Related ArtOver-The-Air (OTA) technology for updating software (control programs for vehicles) stored in a control device (electronic control unit (ECU)) for a vehicle through wireless communication has been studied and developed. For example, Japanese Unexamined Patent Application Publication No. 2017-149323 (JP 2017-149323 A) discloses a vehicle control system capable of safely updating software without impairing user convenience. When it is determined that the location of an electronic key of the vehicle is inside of the vehicle, a mobile device transmits a signal requesting a download of update software to a server. An ECU downloads, via the mobile device, the update software transmitted from the server and updates the software.
SUMMARYA system configuration is conceivable in which a plurality of servers manages software for electronic equipment installed in a vehicle. For example, a server (OTA server) that transmits update software for an ECU, and a server (flag distribution server) that transmits software (so-called flag data) for switching between an enabled state and a disabled state of a specific function that can be executed by the software of the ECU can be provided separately.
In such a system configuration, software transmission schedules may not be sufficiently coordinated between the two servers. When transmission of update software and transmission of flag data are performed at the same time, an error may occur in the ECU that has received the two pieces of software. For example, in an ECU in which part of sequence processing executed in the order of download, checking, and switchover is shared between update software reception processing and flag data reception processing, an error may occur due to flag data reception processing (e.g., downloading flag data) interrupting during execution of update software reception processing (e.g., while checking downloaded software). As a result, additional processing such as retransmission of the software and so forth becomes necessary with these two servers, and there is a possibility that the software cannot be updated smoothly.
The present disclosure provides technology for smoothly updating software of electronic equipment installed in a vehicle.
A server according to a first aspect of the present disclosure is configured to manage software of electronic equipment installed in a vehicle. The server includes storage in which first software is stored; and one or more processors configured to transmit the first software to the vehicle via a wireless communication device. The one or more processors are configured to determine whether activation processing of second software transmitted from an external server to the vehicle is completed at the electronic equipment, and transmit, when the activation processing of the second software is not completed, the first software to the vehicle after the activation processing of the second software is completed.
A software management system according to a second aspect of the present disclosure includes the server according to the first aspect and an external server.
A software management method according to a further third aspect of the present disclosure manages software of electronic equipment installed in a vehicle. The software management method includes: performing a wireless transmission of first software from a computer to the vehicle; and determining whether activation processing of second software wirelessly transmitted to the vehicle from another computer is completed at the electronic equipment. The wireless transmission of the first software includes wirelessly transmitting, when the activation processing of the second software is not completed, the first software to the vehicle after the activation processing of the second software is completed.
A non-transitory storage medium according to a fourth aspect of the present disclosure, stores instructions that are executable by a computer and cause the computer to execute the software management method according to the third aspect.
According to the present disclosure, the software of the electronic equipment installed in the vehicle can be smoothly updated.
Features, advantages, and technical and industrial significance of exemplary embodiments of the disclosure will be described below with reference to the accompanying drawings, in which like signs denote like elements, and wherein:
Embodiments of the present disclosure will be described below in detail with reference to the drawings. Note that the same or corresponding parts are denoted by the same signs throughout the drawings, and description thereof will not be repeated.
First EmbodimentSystem Configuration
The flag distribution server 1 is a server that provides flag data to each of a plurality of electronic control units (ECUs) installed in a vehicle. Flag data is software for performing switchover between an enabled state and a disabled state of a specific function (hereinafter referred to as “specific function”) of software stored in a corresponding ECU among the ECUs. The specific function is typically a vehicle control function, such as a driver assistance function (such as an automated driving function or the like), for example. However, the type of specific function is not limited in particular, and may be a function unrelated to vehicle control, such as multimedia. The flag distribution server 1 is managed, for example, by a development corporation that develops specific functions. The flag distribution server 1 may be managed by a corporation that provides products or services related to specific functions. A configuration of the flag distribution server 1 will be described with reference to
The OTA server 2 is a server that provides software for updating the software of each of the ECUs (hereinafter referred to as “update software”). The OTA server 2 is managed by, for example, a vehicle manufacturer that manufactures the vehicle itself (vehicle platform (VP)). A configuration of the OTA server 2 will be described later with reference to
The vehicle 8 is managed by a user. The user is typically an individual, but may be, for example, a cooperate body that conducts business using the vehicle 8 (a transportation operator or the like). The vehicle 8 may be an automated vehicle. In this case, the OTA server 2 may be managed by a manufacturer of an automated driving system (ADS) installed in the VP, instead of or in addition to the vehicle manufacturer. Note, however, that the vehicle 8 may be a vehicle that can only be manually driven and that does not support automated driving.
The user equipment 9 is equipment that is operated by the user of the vehicle 8. The user equipment 9 may be a mobile terminal or a stationary terminal. Examples of the mobile terminal include smartphones, tablets, notebook personal computers (PCs), and wearable devices (smartwatches and so forth). Examples of the stationary terminal include desktop PCs.
Note that although only one vehicle 8 is illustrated in
Server Configuration
The processor 111 is, for example, a central processing unit (CPU) or a micro-processing unit (MPU). The memory 112 is volatile memory such as random-access memory (RAM) or the like. The storage 113 is rewritable nonvolatile memory such as a hard disk drive (HDD), a solid state drive (SSD), or flash memory, or the like. The storage 113 stores a system program 51 including an operating system (OS), a control program 52 including computer-readable code necessary for control computation, flag data 53, and a payment database 54 for managing payment information (described later) of the flag data 53. The processor 111 reads out the system program 51 and the control program 52, performs loading thereof to the memory 112, and performs execution thereof to implement various types of processing. The network interface 114 controls data communication that is performed among the server 11 and other devices (the vehicle 8, the user equipment 9, and so forth) via the communication device 14.
The input device 12 is a keyboard, a mouse, or the like, and receives input from an operator of the server 11. The output device 13 is a display, for example, and displays various types of information to the operator of the server 11.
Note that while
In the first embodiment, the flag distribution server 1 is an example of “server” or “computer” according to the present disclosure, and the OTA server 2 is an example of “external server” or “external computer” according to the present disclosure. The flag data 53 is an example of “first software” according to the present disclosure. The update software 63 is an example of “second software” according to the present disclosure. An ECU is an example of “electronic equipment” according to the present disclosure.
Software Updating
Processing related to software updating using OTA typically is a series of sequence processing that is performed in the order of configuration synchronization, campaign notification, software download, software installation, software activation (enabling), and update completion notification of the software. Each processing in this sequence processing will be described in further detail.
Configuration Synchronization
The vehicle 8 in an ignition (IG) on state repeatedly executes configuration synchronization for each time an amount of time set in advance elapses. The vehicle 8 also executes configuration synchronization when receiving a configuration synchronization request from the OTA server 2. Configuration synchronization processing by the vehicle 8 includes transmission processing of vehicle configuration information to the OTA server 2.
The vehicle configuration information includes, for example, hardware information (information indicating product numbers of hardware, identifiers of ECUs, and so forth) and software information (information indicating product numbers of software, and so forth) for each ECU included in the vehicle 8.
Campaign Notification
Upon receiving the vehicle configuration information from the vehicle 8, the OTA server 2 checks for any campaign (updatable software) that is ongoing at that point in time. When there is a campaign applicable to the vehicle 8, the OTA server 2 transmits a campaign notification to the vehicle 8. A campaign notification is a signal requesting consent from the user of the vehicle 8 to update the relevant software to a new version. Campaign notifications may include, for example, a list of relevant vehicles, a list of target ECUs, information indicating the purpose of the software update, information indicating functions that the update may affect, and so forth. When the vehicle 8 receives the campaign notification, the vehicle 8 requests the user to perform an input operation regarding whether to consent to application of the campaign. For example, the vehicle 8 makes a display on a human-machine interface (HMI, omitted from illustration) of a message such as “New software found. Do you want to update?” or the like, and requests the user to perform an input operation indicating either consent or rejection.
Downloading
When the user performs an input operation indicating consent, the central ECU executes processing related to downloading of the software. More specifically, the central ECU requests the new software (distribution package containing this software) from the OTA server 2. The central ECU then receives the software from the OTA server 2 and stores it in non-volatile memory (omitted from illustration). After the saving is completed, the central ECU verifies the authenticity of the saved software. When the results of verification are “normal”, the central ECU notifies the OTA server 2 that the download is complete. This notification means that the download was successful.
Installing
When the download is successful, the central ECU performs installation of the software. More specifically, the central ECU requests the target ECU to output the state of this target ECU and a diagnostic trouble code (DTC). The central ECU determines whether installation can be executed for each target ECU, based on the state of the target ECU and the DTC. The central ECU then transfers the new software (update data) to the target ECUs regarding which installation can be executed. Upon receiving the update data, the target ECU executes writing of the update data to the non-volatile memory.
When the transfer of the update data from the central ECU to the target ECU is completed, the target ECU transmits a transfer completion notification to the central ECU. Upon receiving the transfer completion notification, the central ECU requests the target ECU to perform integrity verification. The target ECU performs verification using the integrity verification data in response to a request from the central ECU, and transmits the verification results (installation complete/failed/cancelled) to the central ECU. When the verification results of all target ECUs are “normal”, the central ECU notifies the OTA server 2 of the completion of installation. This notification means that the installation was successful.
Activating
When installation is successfully performed in succession to downloading, the central ECU goes to a state of standing by for activation. Thereafter, when an operation is performed to turn a power switch (omitted from illustration) of the vehicle 8 off, for example, the central ECU causes the HMI to display a predetermined message and requests the user to perform an input operation indicating either consent or rejection. When the user performs an input operation indicating consent, the central ECU executes activation of the software.
Note that when activation by the central ECU fails, the central ECU requests the OTA server 2 to roll back the software. When a request for a rollback is received from the vehicle 8, the OTA server 2 distributes software for rollback to the vehicle 8. Thus, the central ECU can restore the software regarding which activation failed to the original version, using the software for rollback. When the user performs an input operation indicating rejection, the central ECU cancels the processing relating to software updating, without executing the activation.
Software Update Completion Notification
Upon successful activation, the central ECU causes the HMI to display the results of the software update. Thereafter, the central ECU notifies the OTA server 2 of completion of the software update. This notification means that the OTA software update was successful. After transmitting the software update completion notification, the control system of the vehicle 8 shuts down, and the ignition turns off. When the power switch of the vehicle 8 is subsequently turned on, the control system of the vehicle 8 is started up and the ignition is turned on. This starts up the updated software in the target ECU.
Difference in Functions due to Payment
In the present embodiment, the software that is updated using OTA is configured to be capable of switchover of the enabled state and the disabled state of specific functions. In this example, a specific function is enabled when the user pays a fee for the specific function of the software (i.e., when the user pays to use the specific function of the software).
In S901, the flag distribution server 1 determines whether there is difference in functions in the specific function of the software due to payment. Whether there is difference in functions due to payment is registered in advance. Also, whether the user has paid for a specific function (which of the functions the user has paid for) is associated with the user ID and stored in the payment database 54 (see
When the user is paying for a specific function (YES in S903), the flag distribution server 1 generates a flag for enabling the specific function (S904). Conversely, when the user is not paying for the specific function (NO in S903), the flag distribution server 1 generates a flag for disabling the specific function (S905). Note that when there is no difference in functions due to payment in S901 (NO in S901), the flag distribution server 1 ends the process without generating a flag for enabling/disabling the specific function.
Processing Flow
In the present embodiment, the software update process is selectively used depending on whether there is difference in functions due to payment regarding the specific function.
No Difference in Functions
Referring to
In this example, the flag distribution server 1 transmits the flag data 53 to the vehicle 8 during the sequence processing (download, installation, and activation) for the update software 63 (S105). The vehicle 8 then executes sequence processing for the flag data 53. That is to say, the vehicle 8 downloads, installs, and activates the flag data 53 (S107 to S109).
When the sequence processing for the update software 63 is completed, the vehicle 8 transmits to the OTA server 2 an update completion notification indicating that the software update has been completed (S106). Further, when the sequence processing for the flag data is completed, the vehicle 8 transmits to the OTA server 2 a switchover completion notification indicating that switchover of the flag has been completed (S110).
In the example in
Difference in Functions
Prior to transmitting the flag data 53, the flag distribution server 1 queries the OTA server 2 regarding whether the update software has been transmitted to the vehicle 8 within a period that is set in advance and that is most recent (S205). The flag distribution server 1 stands by (suspends) regarding transmission of the flag data until a reply is received from the OTA server 2 (S206).
When the sequence processing for the update software 63 is completed, the vehicle 8 transmits an update completion notification to the OTA server 2 (S207). Upon receiving the update completion notification from the vehicle 8, the OTA server 2 transmits the update completion notification to the flag distribution server 1 (S208). This notification is equivalent to a reply to the query from the flag distribution server 1.
Upon receiving the reply from the OTA server 2, the flag distribution server 1 transmits the flag data 53 to the vehicle 8 (S209). The vehicle 8 downloads, installs, and activates the flag data 53 (S210 to S212). When the sequence processing for the flag data 53 is completed, the vehicle 8 transmits a switchover completion notification to the flag distribution server 1 (S213).
As described above, in the first embodiment, the flag distribution server 1 suspends the transmission of the flag data 53 until receiving the update completion notification from the OTA server 2, and transmits the flag data 53 to the vehicle 8 after receiving the update completion notification. When the sequence processing for the update software 63 is completed, the vehicle 8 transmits an update completion notification. This means that there is a possibility that the vehicle 8 is executing sequence processing (any one of processing of downloading, installing, or activating) regarding the update software 63 at a stage before receiving the update completion notification. Determination can be made that the sequence processing (activation) for the update software 63 has been completed at the stage of receiving the update completion notification, the flag distribution server 1 transmits the flag data 53 to the vehicle 8. This suppresses concurrent execution of sequence processing for two pieces of software (the update software 63 and the flag data 53), and accordingly no error occurs that would necessitate additional processing. Thus, the two pieces of software can be updated smoothly.
In the event of an error occurring when there is a difference in functions due to payment for a specific function, a situation may arise in which “a necessary function was not enabled even though it was paid for.” Accordingly, as described with reference to
Description has been made with reference to
Note that while an example has been described in the present embodiment in which two pieces of software (the update software 63 and the flag data 53) are the object, a person skilled in the art will be able to easily understand that three or more pieces of software can be the object.
First Modification of First Embodiment
In the first embodiment, description has been made that whether the sequence processing (activation) for the update software 63 has been completed in the vehicle 8 is determined based on the update completion notification (S208) from the OTA server 2. However, the technique for determining whether activation of the update software 63 has been completed is not limited to this. Two other techniques will be described below with reference to first and second modifications. Note that for the sake of simplification, no consideration is given hereinafter to difference in functions due to payment for specific functions.
Prior to transmitting the flag data 53, in the first modification the flag distribution server 1 queries the vehicle 8 regarding whether the update software 63 has been received within a period that is set in advance and that is most recent (S305). The flag distribution server 1 stands by (suspends) regarding transmission of the flag data 53 until a reply is received from the vehicle 8 (S306).
When the sequence processing for the update software 63 is completed, the vehicle 8 transmits an update completion notification to the OTA server 2 (S307). In addition, the vehicle 8 transmits an update completion notification to the flag distribution server 1 as well (S308). This notification is equivalent to a reply to the query from the flag distribution server 1.
Upon receiving the reply from the vehicle 8, the flag distribution server 1 transmits the flag data 53 to the vehicle 8 (S309). The vehicle 8 downloads, installs, and activates the flag data 53 (S310 to S312). When the sequence processing for the flag data 53 is completed, the vehicle 8 transmits a switchover completion notification to the flag distribution server 1 (S313).
Second Modification of First Embodiment
Prior to transmitting the flag data, the flag distribution server 1 queries the OTA server 2 regarding whether the update software 63 has been transmitted within a period that is set in advance and that is most recent (S405). The flag distribution server 1 then stands by (suspends) regarding transmission of the flag data 53 (S406).
In the second modification, upon receiving a query from the flag distribution server 1, the OTA server 2 transmits a notification indicating that sequence processing for the update software 63 is being executed (processing-in-progress notification) to the flag distribution server 1, periodically or intermittently, for example. In the example shown in
When no processing-in-progress notification has been received for a certain period of time, the flag distribution server 1 determines that the sequence processing (activation) for the update software 63 has been completed. This no-notification period is equivalent to a reply from the OTA server 2 to the query from the flag distribution server 1. When determining that activation of the update software 63 has been completed, the flag distribution server 1 transmits the flag data 53 to the vehicle 8 (S412). The vehicle 8 downloads, installs, and activates the flag data 53 (S413 to S415). Upon the sequence processing for the flag data 53 being completed, the vehicle 8 then transmits a switchover completion notification to the flag distribution server 1 (S416).
Description has been made with reference to
Also, an example has been described here in which the processing-in-progress notification is transmitted from the OTA server 2 to the flag distribution server 1. However, the processing-in-progress notification may be transmitted from the vehicle 8 to the flag distribution server 1.
Second EmbodimentIn a second embodiment, an example will be described in which the flag data 53 is transmitted to the vehicle 8 before the update software 63 is transmitted. Note that the configuration of the information processing system according to the second embodiment is the same as the configuration described with reference to
The flag distribution server 1 transmits the flag data 53 to the vehicle 8 (S501). The vehicle 8 downloads, installs, and activates the flag data 53 (S502 to S504).
Prior to transmitting the update software 63, the OTA server 2 queries the flag distribution server 1 regarding whether the flag data 53 has been transmitted to the vehicle 8 within a period that is set in advance and that is most recent (S505). The OTA server 2 stands by (suspends) regarding transmission of the update software 63 until a reply is received from the flag distribution server 1 (S506).
When the sequence processing for the update software 63 is completed, the vehicle 8 transmits a switchover completion notification to the flag distribution server 1 (S507). Upon receiving the switchover completion notification, the flag distribution server 1 transmits the switchover completion notification (reply to the query) to the OTA server 2 (S508).
Upon receiving the switchover completion notification from the flag distribution server 1, the OTA server 2 transmits the update software 63 to the vehicle 8 (S509). The vehicle 8 downloads, installs, and activates the update software 63 (S510 to S512). Upon the sequence processing for the update software 63 being completed, the vehicle 8 then transmits an update completion notification to the OTA server 2 (S513).
As described above, in the second embodiment, the OTA server 2 suspends transmission of the update software 63 until receiving the switchover completion notification from the flag distribution server 1, and transmits the update software 63 to the vehicle 8 after receiving the switchover completion notification. Imposing such a condition enables confirmation that the sequence processing (flag switchover) of the flag data 53 has been completed at the point in time of transmission of the update software 63. This suppresses concurrent execution of sequence processing for the two pieces of software, and accordingly no error occurs that would necessitate additional processing. Thus, the two pieces of software can be updated smoothly.
Note that in the second embodiment, the OTA server 2 is an example of a “server” or a “computer” according to the present disclosure, and the flag distribution server 1 is an example of an “external server” or an “external computer” according to the present disclosure. The update software 63 is an example of “first software” according to the present disclosure. The flag data 53 is an example of “second software” according to the present disclosure.
In the same way as in the first embodiment, when there is no difference in functions regarding the specific function due to payment in the updated software, the update software 63 may be transmitted to the vehicle 8 without standing by until the OTA server 2 receives the switchover completion notification. Another method may be used in the second embodiment to determine whether activation of the flag data 53 has been completed (switchover of the flag), in the same way as in the first and second modifications of the first embodiment. That is to say, the OTA server 2 may suspend transmission of the update software 63 until receiving the switchover completion notification from the vehicle 8 (first modification). Alternatively, the OTA server 2 may suspend transmission of the update software 63 while periodically or intermittently receiving the processing-in-progress notification from the flag distribution server 1 (second modification). One skilled in the art will readily appreciate that such modifications can be made.
The embodiments disclosed herein should be construed as exemplary in all respects and not restrictive. The scope of the present disclosure is shown by the claims rather than by the above description of the embodiment and is intended to include all modifications within the meaning and scope equivalent to the claims.
A server according to a first aspect of the present disclosure is configured to manage software of electronic equipment installed in a vehicle. The server includes storage in which first software is stored; and one or more processors configured to transmit the first software to the vehicle via a wireless communication device. The one or more processors are configured to determine whether activation processing of second software transmitted from an external server to the vehicle is completed at the electronic equipment, and transmit, when the activation processing of the second software is not completed, the first software to the vehicle after the activation processing of the second software is completed.
In the above aspect, the first software may be flag data for switchover between an enabled state and a disabled state of a specific function of the software. The second software may be update software for updating the software.
In the above aspect, the one or more processors may be configured to perform switchover between the enabled state and the disabled state of the specific function according to a fee payment status of a user of the vehicle.
In the above aspect, the one or more processors may be configured to transmit, when the software features difference in functions due to payment of fees, the flag data after completion of the activation processing of the update software, and transmit, when the software does not feature the difference in functions, the flag data without awaiting completion of the activation processing of the update software.
In the above aspect, the one or more processors may be configured to transmit the flag data after completion of the activation processing of the update software regardless whether the update software features difference in functions due to payment of fees.
In the above aspect, the first software may be update software for updating the software. The one or more processors may be configured to transmit, when the updated software features difference in functions due to payment of fees, the update software after completion of the activation processing of the second software, and on the other hand transmit, when the updated software does not feature the difference in functions, the update software without awaiting completion of the activation processing of the second software.
In the above aspect, the one or more processors may be configured to, when receiving a notification from the external server indicating that the activation processing of the second software is completed, determine that the activation processing of the second software is completed.
In the above aspect, the one or more processors may be configured to, when receiving a notification from the vehicle indicating that the activation processing of the second software is completed, determine that the activation processing of the second software is completed.
In the above aspect, at least one of the external server or the vehicle may be configured to transmit a notification to the processor indicating processing-in-progress of the second software by the electronic equipment. The one or more processors may be configured to determine that, when the notification is not received, the activation processing of the second software is complete.
A software management system according to a second aspect of the present disclosure includes the server according to the first aspect and an external server.
A software management method according to a further third aspect of the present disclosure manages software of electronic equipment installed in a vehicle. The software management method includes: performing a wireless transmission of first software from a computer to the vehicle; and determining whether activation processing of second software wirelessly transmitted to the vehicle from another computer is completed at the electronic equipment. The wireless transmission of the first software includes wirelessly transmitting, when the activation processing of the second software is not completed, the first software to the vehicle after the activation processing of the second software is completed.
A non-transitory storage medium according to a fourth aspect of the present disclosure, stores instructions that are executable by a computer and cause the computer to execute the software management method according to the third aspect.
Claims
1. A server that is configured to manage software for electronic equipment installed in a vehicle, the server comprising:
- storage in which first software is stored; and
- one or more processors configured to transmit the first software to the vehicle via a wireless communication device, wherein
- the one or more processors are configured to determine whether activation processing of second software transmitted from an external server to the vehicle is completed at the electronic equipment, and transmit, when the activation processing of the second software is not completed, the first software to the vehicle after the activation processing of the second software is completed.
2. The server according to claim 1, wherein:
- the first software is flag data for switchover between an enabled state and a disabled state of a specific function of the software; and
- the second software is update software for updating the software.
3. The server according to claim 2, wherein the one or more processors are configured to perform the switchover between the enabled state and the disabled state of the specific function according to a fee payment status of a user of the vehicle.
4. The server according to claim 2, wherein
- the one or more processors are configured to transmit, when the software features difference in functions due to payment of fees, the flag data after completion of the activation processing of the update software, and transmit, when the software does not feature the difference in functions, the flag data without awaiting completion of the activation processing of the update software.
5. The server according to claim 2, wherein the one or more processors are configured to transmit the flag data after completion of the activation processing of the update software regardless whether the update software features difference in functions due to payment of fees.
6. The server according to claim 1, wherein:
- the first software is update software for updating the software; and
- the one or more processors are configured to transmit, when the updated software features difference in functions due to payment of fees, the update software after completion of the activation processing of the second software, and transmit, when the updated software does not feature the difference in functions, the update software without awaiting completion of the activation processing of the second software.
7. The server according to claim 1, wherein the one or more processors are configured to, when receiving a notification from the external server indicating that the activation processing of the second software is completed, determine that the activation processing of the second software is completed.
8. The server according to claim 1, wherein the one or more processors are configured to, when receiving a notification from the vehicle indicating that the activation processing of the second software is completed, determine that the activation processing of the second software is completed.
9. The server according to claim 1, wherein:
- at least one of the external server or the vehicle is configured to transmit, to the one or more processors, a notification indicating processing-in-progress of the second software by the electronic equipment; and
- the one or more processors are configured to determine that, when the notification is not received, the activation processing of the second software is complete.
10. A software management system comprising:
- the server according to claim 1; and
- the external server.
11. A software management method for managing software of electronic equipment installed in a vehicle, the software management method comprising:
- performing a wireless transmission of first software from a computer to the vehicle; and
- determining whether activation processing of second software wirelessly transmitted to the vehicle from another computer is completed at the electronic equipment, wherein
- the wireless transmission of the first software includes wirelessly transmitting, when the activation processing of the second software is not completed, the first software to the vehicle after the activation processing of the second software is completed.
12. A non-transitory storage medium storing instructions that are executable by a computer and cause the computer to execute the software management method according to claim 11.
Type: Application
Filed: Oct 11, 2023
Publication Date: May 9, 2024
Applicant: TOYOTA JIDOSHA KABUSHIKI KAISHA (Toyota-shi)
Inventors: Satoru FUKUYO (Nisshin-shi), Takuya KAWASAKI (Anjo-shi)
Application Number: 18/484,977