Movatterモバイル変換


[0]ホーム

URL:


DE102016201279A1 - Method and device for monitoring an update of a vehicle - Google Patents

Method and device for monitoring an update of a vehicle
Download PDF

Info

Publication number
DE102016201279A1
DE102016201279A1DE102016201279.7ADE102016201279ADE102016201279A1DE 102016201279 A1DE102016201279 A1DE 102016201279A1DE 102016201279 ADE102016201279 ADE 102016201279ADE 102016201279 A1DE102016201279 A1DE 102016201279A1
Authority
DE
Germany
Prior art keywords
vehicle
update
client
data
procedure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE102016201279.7A
Other languages
German (de)
Inventor
Volker Blaschke
Gafur Zymeri
Klaus Schneider
Wolfgang Fischer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbHfiledCriticalRobert Bosch GmbH
Priority to DE102016201279.7ApriorityCriticalpatent/DE102016201279A1/en
Publication of DE102016201279A1publicationCriticalpatent/DE102016201279A1/en
Pendinglegal-statusCriticalCurrent

Links

Images

Classifications

Landscapes

Abstract

Translated fromGerman

Verfahren (60) zum Überwachen einer Aktualisierung eines Fahrzeuges, gekennzeichnet durch folgende Merkmale: – das Fahrzeug wird in einen sicheren Zustand überführt (61), – der sichere Zustand wird verriegelt (62), – ein energetischer Zustand des Fahrzeuges wird abgefragt (63), – abhängig vom energetischen Zustand wird entweder ein Steuergerät des Fahrzeuges aktualisiert (64) oder das Verfahren (60) vorzeitig kontrolliert abgebrochen und – der sichere Fahrzeugzustand wird entriegelt (65).Method (60) for monitoring an updating of a vehicle, characterized by the following features: - the vehicle is transferred to a safe state (61), - the safe state is locked (62), - an energetic state of the vehicle is interrogated (63) , - Depending on the energetic state either a control unit of the vehicle is updated (64) or the method (60) aborted prematurely controlled and - the safe vehicle state is unlocked (65).

Description

Translated fromGerman

Die vorliegende Erfindung betrifft ein Verfahren zum Überwachen einer Aktualisierung eines Fahrzeuges. Die vorliegende Erfindung betrifft darüber hinaus eine entsprechende Vorrichtung, ein entsprechendes Computerprogramm sowie ein entsprechendes Speichermedium.The present invention relates to a method for monitoring an update of a vehicle. The present invention also relates to a corresponding device, a corresponding computer program and a corresponding storage medium.

Stand der TechnikState of the art

In der Funktechnik wird die Übertragung von Daten mittels elektromagnetischer Wellen, also scheinbar durch das Medium Luft (over the air, OTA), mitunter als Luftschnittstelle bezeichnet. Eine solche Luftschnittstelle ist insbesondere dadurch gekennzeichnet, dass kein festkörperliches Übertragungsmedium wie Kupfer- oder Glasfaserkabel verwendet wird, was für die Zwecke der nachfolgenden Ausführungen die Übertragung im Vakuum nicht ausschließt. Telekommunikationstechnische Ansätze, die sich einer solchen Übertragung bedienen, sind etwa als Over-the-Air-Programmierung (OTA), Over-the-Air Service Provisioning (OTASP), Over-the-Air Provisioning (OTAP) oder Over-the-Air Parameter Administration (OTAPA) bekannt.In radio technology, the transmission of data by means of electromagnetic waves, so apparently by the medium air (over the air, OTA), sometimes referred to as air interface. Such an air interface is particularly characterized in that no solid-state transmission medium such as copper or fiber optic cable is used, which for the purposes of the following embodiments does not preclude transmission in a vacuum. Telecommunications approaches using such transmission include over-the-air programming (OTA), over-the-air service provisioning (OTASP), over-the-air provisioning (OTAP) or over-the-air Parameter Administration (OTAPA).

Von besonderer Bedeutung sind die genannten Technologien für die Aktualisierung sogenannter Firmware, also solcher Software, die in elektronische Geräte eingebettet ist. Auf Firmware angepasste Abwandlungen der oben genannten OTA-Technologien werden in der Telekommunikation unter dem Oberbegriff der Firmware-Over-the-Air-Programmierung (FOTA) zusammengefasst.Of particular importance are the technologies mentioned for updating so-called firmware, ie software embedded in electronic devices. Firmware-adapted modifications of the above-mentioned OTA technologies are summarized in telecommunications under the generic term of firmware over-the-air programming (FOTA).

DE 10105454 A1 schlägt ein Verfahren zur automatischen Ergänzung von Software über eine Luftschnittstelle vor, das dazu dient, Software, die auf einem System läuft, durch neue Softwaremodule zu ergänzen, wobei diese Softwaremodule zunächst getestet werden und von diesen Softwaremodulen dann Applikationsmodule abgeleitet werden. DE 10105454 A1 proposes a method for automatically supplementing software over an air interface, which serves to supplement software running on a system with new software modules, which software modules are first tested and then derived from these software modules application modules.

Offenbarung der ErfindungDisclosure of the invention

Die Erfindung stellt ein Verfahren zum Überwachen einer Aktualisierung eines Fahrzeuges, eine entsprechende Vorrichtung, ein entsprechendes Computerprogramm sowie ein entsprechendes Speichermedium gemäß den unabhängigen Ansprüchen bereit.The invention provides a method for monitoring an update of a vehicle, a corresponding device, a corresponding computer program and a corresponding storage medium according to the independent claims.

Dem erfindungsgemäßen Ansatz liegt die Erkenntnis zugrunde, dass das Fahrzeug vor der Fahrzeugaktualisierung in einen sicheren Zustand versetzt werden sollte, z. B. indem die elektronische Handbremse aktiviert oder die Getriebeautomatik im Parkmodus verriegelt wird. Dieser Zustand sollte verriegelt, d. h. der einmal eingenommene sichere Zustand erst nach einer Fahrzeugaktualisierung wieder verlassen werden. Erst nach diesen zwei Vorbereitungsschritten sollte die Fahrzeugaktualisierung gestartet werden. Vor der Aktualisierung empfiehlt es sich, den energetischen Zustand des Fahrzeugs zu prüfen. Weiterhin mag überprüft werden, ob der Fahrzeugbenutzer das Fahrzeug starten will. Nach der Fahrzeugaktualisierung kann die Verriegelung des Fahrzeugs wieder aufgehoben werden.The approach according to the invention is based on the knowledge that the vehicle should be placed in a safe state before the vehicle is updated, eg. B. by the electronic handbrake activated or the automatic transmission is locked in park mode. This condition should be locked, d. H. the once taken safe state are left only after a vehicle update again. Only after these two preparation steps should the vehicle update be started. Before updating it is recommended to check the energetic condition of the vehicle. Furthermore, it may be checked whether the vehicle user wants to start the vehicle. After the vehicle has been updated, the lock of the vehicle may be canceled.

Ein Vorzug der vorgeschlagenen Lösung liegt in der Gewähr, dass der nächste Aktualisierungsschritt ausgeführt werden kann, ohne die Mobilität des Fahrzeugs zu gefährden. Das Fahrzeug ist anschließend wieder fahrbereit.An advantage of the proposed solution is the assurance that the next update step can be performed without jeopardizing the mobility of the vehicle. The vehicle is then ready to drive again.

Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen des im unabhängigen Anspruch angegebenen Grundgedankens möglich. So kann vorgesehen sein, dass das Aktualisierungspaket vorab drahtlos auf das Fahrzeug übertragen wird, wobei das Überführen des Fahrzeugs in den sicheren Zustand und das Aktualisieren seiner Steuergeräte jeweils anhand des besagten Aktualisierungspaketes erfolgen. Diese Variante der Erfindung erkennt, dass die drahtgebundene Aktualisierung der Software eines gesamten Fahrzeuges einen erheblichen logistischen Aufwand nach sich zieht. Fahrzeughersteller stellen hierbei auf ihren Servern die aktualisierte Software in sogenannten Baselines zur Verfügung. Diese wird anschließend zu Vertragswerkstätten übertragen, dann wiederum auf Diagnosetester kopiert, die die Aktualisierung der Fahrzeug-Software übernehmen.The measures listed in the dependent claims advantageous refinements and improvements of the independent claim basic idea are possible. It can thus be provided that the update package is transmitted in advance wirelessly to the vehicle, wherein the transfer of the vehicle in the safe state and the updating of its control units take place in each case based on the said update package. This variant of the invention recognizes that the wired updating of the software of an entire vehicle involves considerable logistical expense. Vehicle manufacturers provide the updated software on their servers in so-called baselines. This is then transferred to authorized workshops, and then copied to diagnostic testers that update the vehicle software.

Diese konventionelle Fahrzeug-Aktualisierung betrifft bis zu 100 Steuergeräte und kann mehr als acht Stunden dauern. In den herkömmlicherweise zur Verfügung gestellten Verfahren werden Steuergeräte streng sequentiell aktualisiert. Zur Absicherung dieses Aktualisierungsvorganges wird in den Werkstätten ein Ladegerät an das Fahrzeug angeschlossen, da die im Fahrzeug zur Verfügung stehende Batterieladung für diesen lang anhaltenden Vorgang nicht ausreichen würde. Der Installationsvorgang wird vom angeschlossenen Diagnosetester ausgelöst, der auch die Firmware für die Steuergeräte enthält. Die Werkstatt sichert beispielsweise zu, dass das Fahrzeug für die Dauer dieses Vorgangs auf einer ebenen Fläche steht, nicht bewegt wird und keine Startvorgänge stattfinden. Weitere Maßnahmen wie das Aktivieren der elektronischen Handbremse bzw. das Aktivieren der mechanischen Handbremse werden in der Regel ebenfalls ergriffen. Im Falle eines Installationsfehlers wird der Installationsvorgang wiederholt.This conventional vehicle update affects up to 100 ECUs and can take more than eight hours. In the conventionally provided methods, controllers are strictly sequentially updated. To safeguard this update process, a charger is connected to the vehicle in the workshops because the battery charge available in the vehicle would not be sufficient for this long-lasting process. The installation process is triggered by the connected diagnostic tester, which also contains the firmware for the ECUs. The workshop assures, for example, that the vehicle is standing on a flat surface for the duration of this process, is not moved and no take-offs take place. Other measures such as activating the electronic handbrake or activating the mechanical handbrake are usually also taken. In case of an installation error, the installation process is repeated.

Die vorgeschlagene drahtlose Übertragung dagegen macht sich den Umstand zunutze, dass Software- und insbesondere Firmware-Update OTA im automobilen Bereich grundsätzlich verfügbar sind. Einschlägige Technologien sind vor allem aus dem Bereich der Mobiltelefonie bekannt; hier wurden bereits Standards definiert und es existieren bereits diesen Standards entsprechende Produkte und Lösungen. Die Software-Aktualisierung aller Steuergeräte eines Fahrzeugs per Mobilfunk, ohne dass hierzu ein Werkstattbesuch nötig wäre, bietet insofern wesentliche logistische Vorteile.The proposed wireless transmission, on the other hand, takes advantage of the fact that Software and in particular firmware update OTA in the automotive sector are basically available. Relevant technologies are mainly known in the field of mobile telephony; Standards have already been defined and existing products and solutions already exist to meet these standards. The software update of all control units of a vehicle via mobile phone, without the need for a workshop visit, offers significant logistical advantages.

Die genannte Ausführungsform stellt sich daher der technischen Aufgabe, die Fahrzeugaktualisierung auch abseits der Werkstatt in einem gesicherten Prozess zu ermöglichen, in dem eine definierte Umgebung hergestellt wird. Bei der vorgeschlagenen Fahrzeugaktualisierung über die Luftschnittstelle wird diese abgesicherte Umgebung durch das Fahrzeug selbst hergestellt. Diese Aufgabe wird durch die Ausführung des im unabhängigen Anspruch genannten Verfahrens nach dem Übertragen des Aktualisierungspaketes gelöst.The named embodiment therefore has the technical task of enabling vehicle updating away from the workshop in a secure process in which a defined environment is established. In the proposed vehicle update over the air interface, this secured environment is established by the vehicle itself. This object is achieved by the execution of the method mentioned in the independent claim after transmission of the update package.

Gemäß einem weiteren Aspekt kann vorgesehen sein, dass das Überführen in den sicheren Zustand das Aktivieren einer elektronischen Handbremse des Fahrzeuges oder Verriegeln von dessen Automatikgetriebe in einer Parkposition umfasst. Eine andere Ausgestaltung kontrolliert den Prozess der Fahrzeugabsicherung, indem der Zustand einer mechanischen Handbremse überprüft wird.According to a further aspect, it may be provided that the transfer to the safe state comprises activating an electronic handbrake of the vehicle or locking its automatic transmission in a parked position. Another embodiment controls the process of securing the vehicle by checking the condition of a mechanical handbrake.

Gemäß einem weiteren Aspekt kann vorgesehen sein, dass der energetische Zustand des Fahrzeuges durch eine Auswertung der Batteriespannung des Fahrzeuges abgefragt wird. Eine entsprechende Variante fußt auf der Einsicht, dass die Fahrzeugaktualisierung mehrere Stunden dauern kann; daher ist es wichtig, vor ihrem Beginn den Batteriezustand zu ermitteln. Dieser kann neben einfachem Auslesen des Batteriezustandes in komplexen Szenarien mit dem Bordcomputer des Fahrzeugs zur Ermittlung der aktuellen Ladungskapazität der Autobatterie bestimmt werden, um die Freigabe für den Aktualisierungsvorgang des Fahrzeugs zu erteilen.According to a further aspect, it can be provided that the energy state of the vehicle is queried by an evaluation of the battery voltage of the vehicle. A similar variant is based on the insight that the vehicle update can take several hours; therefore, it is important to determine the battery condition before starting. This can be determined in addition to simple reading of the battery condition in complex scenarios with the on-board computer of the vehicle to determine the current charge capacity of the car battery to grant the release for the update process of the vehicle.

Während der Fahrzeugaktualisierung werden vorzugsweise laufend Informationen über den energetischen Zustand des Fahrzeugs geliefert. Erweist sich dieser als derart kritisch, dass der Startvorgang nicht sicher gewährleistet werden kann, so wird die Fahrzeugaktualisierung in einem sicheren Zustand abgebrochen. Der Fahrzeughersteller als Lieferant der Firmware jedes Steuergerätes kann sicherstellen, dass ein Abbruch in bestimmten Phasen des Aktualisierungsprozesses möglich ist.During the vehicle update, information about the energetic state of the vehicle is preferably provided on an ongoing basis. If this proves to be so critical that the starting process can not be reliably ensured, then the vehicle update is aborted in a safe state. The vehicle manufacturer, as the supplier of the firmware of each ECU, can ensure that termination is possible at certain stages of the update process.

Ebenso kann eine Ausführungsform der Erfindung Aktionen des Benutzers wie den Startvorgang prüfen. Auch in diesem Fall wird der Aktualisierungsvorgang in einer sicheren Phase unterbrochen.Likewise, an embodiment of the invention may check actions of the user such as the startup procedure. Also in this case, the update process is interrupted in a safe phase.

Kann ein Steuergerät in einem Aktualisierungsschritt nicht fehlerfrei aktualisiert werden, so setzt eine Ausführungsform der Erfindung die betreffenden Steuergeräte zurück (roll back), um zu vermeiden, dass das Fahrzeug durch den Ausfall eines Steuergerätes nicht mehr fahrbereit ist. Ein derartiger, fachsprachlich auch als Rollback bezeichneter Vorgang bewirkt in EDV-Systemen die Rückgängigmachung der einzelnen Verarbeitungsschritte einer Transaktion. Das System wird dadurch vollständig auf den Zustand vor dem Beginn der Aktualisierung eines zusammenhängenden Satzes von Steuergeräten zurückgeführt.If a control unit can not be updated without error in an updating step, an embodiment of the invention resets the respective control units (roll back) in order to avoid that the vehicle is no longer ready to travel due to the failure of a control unit. Such a process, also referred to as rollback in technical terms, causes the reversal of the individual processing steps of a transaction in EDP systems. The system is thereby wholly returned to the state prior to commencement of updating a contiguous set of controllers.

Wird der Aktualisierungsvorgang durch den energetischen Zustand des Fahrzeugs abgebrochen, so kann die Anwendung eines erfindungsgemäßen Verfahrens sicherstellen, dass die Ladephase des Fahrzeugs ausreichend lang angedauert hat, bevor mit der Fahrzeugaktualisierung fortgefahren wird. Hierzu wird wieder entweder der Ladestand der Autobatterie herangezogen oder deren Kapazität ermittelt. Das Fahren des Fahrzeugs und das damit verbundene Laden der Fahrzeugbatterie bilden vorzugsweise Teil der Aktualisierungsstrategie. Beim Abbruch der Fahrzeugaktualisierung erfolgt ebenfalls ein Aufheben der Verriegelung der Sicherheitssysteme des Fahrzeugs wie der elektronischen Handbremse oder das Entriegeln des Automatikgetriebes.If the updating process is interrupted by the energetic state of the vehicle, the use of a method according to the invention can ensure that the charging phase of the vehicle has lasted sufficiently long before the vehicle update is continued. For this purpose, again either the charge level of the car battery is used or determined their capacity. The driving of the vehicle and the associated charging of the vehicle battery preferably form part of the updating strategy. When canceling the vehicle update is also a lifting of the locking of the safety systems of the vehicle such as the electronic handbrake or unlocking the automatic transmission.

Kurze Beschreibung der ZeichnungenBrief description of the drawings

Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigt:Embodiments of the invention are illustrated in the drawings and explained in more detail in the following description. It shows:

1 die einer Ausführungsform der Erfindung zugrunde liegende Architektur. 1 the architecture underlying an embodiment of the invention.

2 die Zuordnung der Funktionskomponenten in autonome Bereiche mit Interaktionsabhängigkeiten und Verantwortlichkeiten. 2 the assignment of functional components to autonomous areas with interaction dependencies and responsibilities.

3 exemplarische Bedingungen, die bei Berücksichtigung die Robustheit erhöhen. 3 exemplary conditions that increase robustness when considered.

4 eine Koordinierungsschicht und den transparenten Umgang mit den Installationsausführungsfunktionen. 4 a coordination layer and the transparent handling of the installation execution functions.

5 das Flussdiagramm eines erfindungsgemäßen Verfahrens zum Überwachen der Aktualisierung. 5 the flowchart of a method according to the invention for monitoring the update.

Ausführungsformen der Erfindung Embodiments of the invention

Das Verfahren setzt auf der in1 illustrierten technischen Architektur auf, die nicht nur Modularität, Erweiterbarkeit und Anpassbarkeit erhöht, sondern auch die Robustheit. Der Daten-Download ist hierzu in einer Komponente separiert, welche sowohl als Download-Server21 im Backend20 als auch als Download-Clients11 im Fahrzeug10 implementiert wird. Das Device-Management ist in einer Komponente separiert, welche sowohl als Gerätemanagement-Server26 im Backend20 als auch als Gerätemanagement-Client16 im Fahrzeug10 implementiert wird. Ein fahrzeugseitiger Proxy wird genutzt, um verteilte Implementierungen des Gerätemanagements – zum Beispiel in mehreren Domänen – zu einer einzigen Implementierung zu bündeln.The procedure relies on the in 1 illustrated technical architecture, which not only increases modularity, expandability and customizability, but also the ruggedness. The data download is separated for this purpose in a component, which both as adownload server 21 in thebackend 20 as well asdownload clients 11 in thevehicle 10 is implemented. The device management is separated in a component, which both as adevice management server 26 in thebackend 20 as well asdevice management client 16 in thevehicle 10 is implemented. A vehicle-side proxy is used to bundle distributed implementations of device management - for example, in multiple domains - into a single implementation.

Das Software-Update und -Management ist in einer Komponente separiert, welche sowohl als SCOS-Server22 und FCOS-Server23 im Backend20 als auch als Anwendungssoftware-Update-Client12 und Firmware-Update-Client13 im Fahrzeug10 implementiert wird. SCOMO/FUMO bezeichnet hier die Funktionalität entsprechend OMA-DM als einer beispielhaften Umsetzung.The software update and management is separated into a component, which both as aSCOS server 22 andFCOS servers 23 in thebackend 20 as well as an applicationsoftware update client 12 andfirmware update client 13 in thevehicle 10 is implemented. SCOMO / FUMO here refers to the functionality according to OMA-DM as an exemplary implementation.

Ein Fahrzeugmanagement25 dient der Konkretisierung eines „Devices“ zu dem Fahrzeug10 inklusive seiner relevanten Topologie, also Steuergeräte (electronic control units, ECUs) und Sub-Systeme.Avehicle management 25 serves to concretize a "device" to thevehicle 10 including its relevant topology, ie electronic control units (ECUs) and subsystems.

Das fachliche Datenhandling seitens des Backends20 ist in einem Fahrzeug-Content-Management28 separiert, welche die unterschiedlichen Versionen und Varianten von Datenständen an das Fahrzeug10 bindet. Separiert ist auch die Update-Logik einschließlich der Kampagnensteuerung, welche sowohl als Fahrzeugupdate-Server24 im Backend20 als auch als Fahrzeugupdate-Client14 im Fahrzeug10 implementiert wird.The technical data handling on the part of thebackend 20 is in avehicle content management 28 separates the different versions and variants of data statuses to thevehicle 10 binds. Also separated is the update logic including the campaign control, which both as avehicle update server 24 in thebackend 20 as well as avehicle update client 14 in thevehicle 10 is implemented.

Als Content-Management18 ist das Daten-Management im Fahrzeug10 separiert. Entsprechendes gilt für die für die ECU-Aktualisierung im Fahrzeug10 separierte Firmware-Update-Komponente, welche in mehreren Varianten und Instanzen – etwa jener eines Anwendungssoftware-Update-Clients12 oder eines Firmware-Update-Clients13 – vorliegen kann und in der Lage ist, die unterschiedlichen Systeme und Technologien zu aktualisieren.Ascontent management 18 is the data management in thevehicle 10 separated. The same applies to the ECU update in thevehicle 10 Separated firmware update component, which in several variants and instances - such as that of an applicationsoftware update client 12 or a firmware update client 13 - be able to and be able to update the different systems and technologies.

Die Inhalte und Funktionen der aufgeführten Komponenten seien nunmehr im Einzelnen erläutert.The contents and functions of the listed components will now be explained in detail.

Das Fahrzeugmanagement25 ist für die Kenntnis der Fahrzeuge10 – im Sinne eines Satzes oder einer Gruppe von Fahrzeugen10 –, des Fahrzeuges10 selbst und seiner Fahrzeugtopologie für alle Zwecke verantwortlich und in der Lage, ein Gerät auf das vom Gerätemanagement15,16,26 gelieferte Fahrzeug10 abzubilden. Das Gerätemanagement15,16,26 identifiziert und kommuniziert hierzu mit einem Gerät, nicht notwendigerweise einem Fahrzeug10 oder einem bekannten Fahrzeug10. Mehrere Geräte können dabei zu einem Fahrzeug10 zusammengefasst sein. Gleichwohl kann das Gerätemanagement15,16,26 einen anderen Gerätetyp, beispielsweise einen Rasenmäher, identifizieren. Das Gerätemanagement15,16,26 identifiziert somit den Gerätetyp, um die Weiterleitung an dessen Verwaltungsfunktion zu erlauben. Im vorliegenden Beispiel handelt es sich dabei um das Fahrzeugmanagement25.Thevehicle management 25 is for the knowledge of the vehicles 10 - in the sense of a sentence or a group of vehicles 10 -, of thevehicle 10 himself and his vehicle topology responsible for all purposes and capable of getting a device to that ofdevice management 15 . 16 . 26 deliveredvehicle 10 map. Thedevice management 15 . 16 . 26 identifies and communicates with a device, not necessarily avehicle 10 or a knownvehicle 10 , Several devices can become avehicle 10 be summarized. Nevertheless, thedevice management 15 . 16 . 26 identify another type of device, such as a lawnmower. Thedevice management 15 . 16 . 26 thus identifies the device type to allow forwarding to its management function. In the present example, this is thevehicle management 25 ,

Der Gerätemanagement-Server26 ist in der Lage, alle Verwaltungsaktionen mit dem zugehörigen Gerät durchzuführen. Hierzu ist ein Protokoll vonnöten, um solcherlei Verwaltungsobjekte zum und vom Gerät zu befördern.Thedevice management server 26 is able to perform all administrative actions with the associated device. This requires a protocol to transport such administrative objects to and from the device.

Das Gerätemanagement15,16,26 ist in der Lage, mehrere Geräte unterschiedlichen Typs zu handhaben. Bekannte Geräte werden mithilfe des Datenmanagements27 identifiziert und typisiert, um ein „bekanntes Gerät“ zu werden. Ein bekanntes Gerät wird der zugehörigen Verwaltungsfunktion – vorliegend dem Fahrzeugmanagement25 – zugeleitet. Für die Zwecke der folgenden Ausführungen sei angenommen, dass alle Geräte als „Straßenfahrzeuge“ typisiert und durch das Fahrzeugmanagement25 verarbeitet werden. Nichtsdestotrotz ist das Gerätemanagement vorzugsweise in der Lage, auch andere Typen und Anwendungsfälle zu unterstützen.Thedevice management 15 . 16 . 26 is able to handle multiple devices of different types. Known devices are usingdata management 27 identified and typed to become a "known device". A known device is the associated management function - in this case the vehicle management 25 - forwarded. For the purposes of the following discussion, it is assumed that all devices are typed as "road vehicles" and byvehicle management 25 are processed. Nonetheless, device management is preferably able to support other types and applications as well.

Der Gerätemanagement-Client16 ermöglicht es, Softwarekomponentenmanagement in der zugehörigen Laufzeitumgebung von einem Gerätemanagement-Server26 aus einzuleiten. Der Gerätemanagement-Treiber unterstützt Geräteerkennung und Parameterkonfiguration durch den Gerätemanagement-Client16. Der Gerätemanagement-Client16 wiederum interagiert mit einem oder mehreren Gerätemanagement-Agenten15 in der Umgebung, die über einen optionalen Gerätemanagement-Proxy für die Durchführung der Verwaltungsaktivitäten mittels eines gelieferten Softwarekomponentenmanagementobjektes zuständig sind. Der Gerätemanagement-Client16 setzt den allgemeinen Warnmechanismus ein, um die den Status der Verwaltungsaktivität umfassende endgültige Benachrichtigung mitzuteilen.Thedevice management client 16 Allows software component management in the associated runtime environment from adevice management server 26 to initiate. The device management driver supports device discovery and parameter configuration by thedevice management client 16 , Thedevice management client 16 in turn, interacts with one or moredevice management agents 15 in the environment, which are responsible for performing the management activities by means of a supplied software component management object via an optional device management proxy. Thedevice management client 16 sets the general alert mechanism to report the final notification of the status of the administrative activity.

Wenn mehrere Instanzen des Gerätemanagement-Clients16 existieren, dann wird diese Aktivität als bestmögliche Alternative durch eine einzige Instanz des Gerätemanagement-Clients16 und zusätzlichen Gerätemanagement-Agents15 ausgeführt. Um bei einem einzigen Gerät pro Fahrzeug10 gleichwohl mehrere Gerätemanagement-Clients16 unterstützen zu können, wird ein Gerätemanagement-Proxy verwendet. Auf jedem IP-fähigen System46 läuft somit eine Instanz des Gerätemanagement-Agenten15 und nutzt den zentralen Proxy des Gerätemanagement-Client16.If multiple instances of thedevice management client 16 exist, then this activity is considered the best possible alternative by a single instance of thedevice management client 16 and additionaldevice management agents 15 executed. To use a single device pervehicle 10 however, severaldevice management clients 16 to be able to support, will Device Management Proxy used. On any IP-enabledsystem 46 Thus, an instance of the device management agent is running 15 and uses the central proxy of thedevice management client 16 ,

Die Gerätemanagement-Proxy-Komponente ermöglicht es, mehrere Instanzen des Gerätemanagement-Clients16 zu vermeiden. Hierzu leitet und aggregiert jeder Gerätemanagement-Agent das Gerätemanagement-Verwaltungsobjekt an den Gerätemanagement-Client16. Die Gerätemanagement-Agent können in unterschiedlichen Laufzeitumgebungen laufen. Der Proxy ist zuständig und stellt die eindeutige Zuordnung zwischen Fahrzeug10 und Gerät sicher.The device management proxy component allows multiple instances of thedevice management client 16 to avoid. For this purpose, each device management agent forwards and aggregates the device management administration object to thedevice management client 16 , The device management agents can run in different runtime environments. The proxy is responsible and provides the unique assignment between thevehicle 10 and device safe.

Das Fahrzeug-Content-Management28 ist seitens des Backends20 dafür zuständig, den Inhalt abzubilden, für die Übertragung gegebenenfalls zu komprimieren und für die Verwendung bzgl. Software Updates zu paketieren. Es empfängt die Daten und Inhalt vom Datenmanagement27, dieses speichert die Daten und Inhalt auf einheitliche Art. So wird die OEM-Varianz hinsichtlich Daten und Inhalt innerhalb des Fahrzeuges10 vom Datenmanagement27 vollständig abgedeckt. Dies bringt auch die eindeutige semantische und syntaktische Beziehung zwischen der Ausgabe des Datenmanagements27 und dem zugehörigen Content-Management18 seitens des Fahrzeuges10 mit sich.Thevehicle content management 28 is on the part of thebackend 20 responsible for mapping the content, compressing it for transmission if necessary, and packaging it for use with software updates. It receives the data and content from thedata management 27 This saves the data and content in a consistent manner. Thus, the OEM variance in terms of data and content within thevehicle 10 fromdata management 27 completely covered. This also brings the unique semantic and syntactic relationship between the output ofdata management 27 and the associatedcontent management 18 from the side of thevehicle 10 with himself.

Der SCOS-Server22 ist für das Aufbauen und Übertragen der Management-Objekte für Applikationssoftware Updates verantwortlich. Im Falle einer Verwendung von OMA-DM kann dies durch Nutzung des SCOMO-Protokolls und Management-Objekte realisiert werden. Der SW-Update-Client12 ist für die Ausführung von SCOS-Anweisungen zuständig. Er verbraucht die an das Gerät gelieferte Softwarekomponente und garantiert, dass ein Erfolgs- oder Fehlerergebnis übermittelnde Warnungen zurück an den SCOS-Server22 geleitet werden. Um bei einem einzigen Gerät pro Fahrzeug10 gleichwohl mehrere SW-Update-Clients unterstützen zu können, werden mehrere Varianten und Instanzen verwendet. Alle SW-Update-Client-Instanzen12 werden hierbei vom Fahrzeugupdate-Server14 orchestriert. So kann auf jedem IP-fähigen System eine Instanz des SW-Update-Clients12 laufen.TheSCOS server 22 is responsible for setting up and transferring the management objects for application software updates. In case of using OMA-DM this can be realized by using the SCOMO protocol and management objects. TheSW update client 12 is responsible for executing SCOS statements. It consumes the software component delivered to the device and guarantees that any success or error result transmits alerts back to theSCOS server 22 be directed. To use a single device pervehicle 10 however, to support multiple SW update clients, multiple variants and instances are used. All SWUpdate client instances 12 are from thevehicle update server 14 orchestrated. Thus, on each IP-capable system, an instance of theSW Update Client 12 to run.

Der Download-Server21 ist für die Bereitstellung der später zu übertragenden Update-Pakete verantwortlich. Der Download-Server21 bezieht seinen Inhalt vom Fahrzeug-Datenmanagement27, koordiniert durch den Fahrzeugupdate-Server24. Dies stellt sicher, dass nur jene Update-Pakete durch den Download-Server21 verfügbar sind, die tatsächlich durch das Fahrzeug10 gebraucht und benötigt werden.Thedownload server 21 is responsible for providing the update packages to be transferred later. Thedownload server 21 derives its content fromvehicle data management 27 , coordinated by thevehicle update server 24 , This ensures that only those update packages through thedownload server 21 are actually available through thevehicle 10 needed and needed.

Die Wertschöpfungskette „Fahrzeugupdateanforderung, Content-Zusammenstellung, Content-Bereitstellung“ durch den Download-Server21 wird somit nur für aktive Fahrzeuge10 innerhalb einer definierten Kampagne durchgeführt.The value chain "vehicle update request, content compilation, content delivery" by thedownload server 21 is thus only foractive vehicles 10 carried out within a defined campaign.

Der Download-Client11 ist für das Herunterladen von Softwarekomponenten, Firmware oder anderem Inhalt in das Fahrzeug10 zuständig. Der Download-Client11 kann DLOTA oder irgendeine andere, beispielsweise auf HTTP, HTTPS oder FTP basierende Luftschnittstelle29 unterstützen. Der Download-Client11 verfügt vorzugsweise über eine Schnittstelle zu einem Content-Speicher17 via Content-Management18.Thedownload client 11 is for downloading software components, firmware, or other content into thevehicle 10 responsible. Thedownload client 11 can DLOTA or any other, for example on HTTP, HTTPS or FTP basedair interface 29 support. Thedownload client 11 preferably has an interface to acontent store 17 viacontent management 18 ,

Der Fahrzeugupdate-Server24 ist für die Koordinierungsschicht des Fahrzeugupdate-Prozesses zuständig. Mit anderen Worten: Er führt die definierte Update-Kampagne oder die definierten Update-Kampagnen aus. Die ursprünglich durch das OEM-Daten- und -Servicemanagement geschriebene Spezifikation der Kampagne für ein bestimmtes Fahrzeug10 lässt sich vom Datenmanagement27 beziehen. Diese Spezifikation verbindet die erforderlichen Dienste und Abläufe zu einem resultierenden Update-Prozess. Wenn das Fahrzeug10 durch das Fahrzeugmanagement25 erkannt und vermerkt wird, werden sein Zustand und Status dauerhaft durch das Datenmanagement27 überwacht.Thevehicle update server 24 is responsible for the coordination layer of the vehicle update process. In other words, it executes the defined update campaign or defined update campaigns. The campaign specification for a specific vehicle, originally written by OEM Data andService Management 10 can be derived fromdata management 27 Respectively. This specification links the required services and processes to a resulting update process. If thevehicle 10 through thevehicle management 25 is recognized and noted, its status and status become permanent throughdata management 27 supervised.

Der Fahrzeugupdate-Client14 ist für die Ausführung der Anforderungen des Fahrzeugupdate-Servers24 zuständig. Der Fahrzeugupdate-Client14 koordiniert somit den Fahrzeugupdate-Prozess oder einen beliebigen Teil davon – Anwendungssoftware-Updates eingeschlossen – für das Fahrzeug10. Um Flexibilität und einfache Anbindung an bestehende Technologien zu ermöglichen, implementiert der Fahrzeugupdate-Client14 auch eine Management-Schnittstelle zum Gerätemanagement. Des Weiteren übernimmt der Fahrzeugupdate-Client14 die Verantwortung für den heruntergeladenen Inhalt, empfängt den auf das Fahrzeug10 bezogenen Teil – etwa die Update-Prozessdaten und andere Hilfsinformationen – und delegiert Update und Inhalt an die Client12 bzgl.13.Thevehicle update client 14 is for the execution of the vehicleupdate server requirements 24 responsible. Thevehicle update client 14 thus coordinates the vehicle update process or any part thereof - including application software updates - for thevehicle 10 , To enable flexibility and easy connectivity to existing technologies, the Vehicle Update Client implements 14 also a management interface for device management. Furthermore, the vehicle update client takes over 14 the responsibility for the downloaded content is received on thevehicle 10 related part - such as the update process data and other help information - and delegates update and content to theclient 12 concerning. 13 ,

Wird beispielsweise OMA-DM verwendet, so können FUMO und/oder SCOMO Objekte verwendet werden.If, for example, OMA-DM is used, then FUMO and / or SCOMO objects can be used.

Das Datenmanagement27 ist seitens des Backends20 dafür zuständig, konsistente Daten und Inhalt an die Dienste zu liefern.Thedata management 27 is on the part of thebackend 20 responsible for providing consistent data and content to the services.

Das Content-Management18 ist dafür zuständig, jedwede Art von Inhalt innerhalb des Fahrzeuges10 persistent abzulegen. Es dient gleichsam als netzgebundener Speicher (network-attached storage, NAS) des Fahrzeuges10 einschließlich der Fähigkeit, die Daten aus einer Web-Quelle zu laden. Mehrere Instanzen eines Content-Speichers17 können innerhalb des Fahrzeuges10 existieren und werden durch das Content-Management18 verwaltet. Das Content-Management18 kümmert sich um Speicherung, Depaketierung und Zusammenfügen von Daten und kann für jede Art von Anwendung innerhalb des Fahrzeuges10 genutzt werden.Thecontent management 18 is responsible for any kind of content within thevehicle 10 to be stored persistently. It serves as network-attached storage storage, NAS) of thevehicle 10 including the ability to load the data from a web source. Multiple instances of acontent store 17 can be inside thevehicle 10 exist and are throughcontent management 18 managed. Thecontent management 18 takes care of storing, depacketing and merging data and can handle any type of application within thevehicle 10 be used.

Der Content-Speicher17 ist dafür zuständig, jedwede Art von Inhalt innerhalb des Steuergerätes (electronic control unit, ECU) persistent abzulegen. Es wird gleichsam wie eine zeichenorientierte Gerätedatei (raw device) verwendet. Mehrere Instanzen des Content-Speichers17 können innerhalb des Fahrzeuges10 existieren und werden durch das Content-Management18 verwaltet. Der Content-Speicher17 kümmert sich um die Speicherung und kann für jede Art von Anwendung innerhalb des Fahrzeuges10 genutzt werden.Thecontent store 17 is responsible for storing any type of content within the control unit (electronic control unit, ECU) persistently. It is used like a character-oriented device file (raw device). Multiple instances ofcontent storage 17 can be inside thevehicle 10 exist and are throughcontent management 18 managed. Thecontent store 17 takes care of the storage and can be used for any type of application within thevehicle 10 be used.

Der Steuergerät-Update-Client12 resp.13 ist für die Ausführung des Anwendungssoftware- oder Firmware-Updates für ein bestimmtes Steuergerät oder einen bestimmten Teilbereich zuständig. Der Steuergerät-Update-Client12 resp.13 fungiert als Client und ist mit dem Fahrzeugupdate-Client14 verbunden. Er verwaltet den Anwendungssoftware- oder Firmware-Update-Prozess einschließlich des Rollbacks für ein bestimmtes Steuergerät oder einen bestimmten Teilbereich. Er ist darüber hinaus dafür zuständig, dass der Zustand des Steuergerätes oder Teilbereiches jederzeit bekannt ist.TheECU update client 12 respectively. 13 is responsible for running the application software or firmware update for a specific controller or partition. TheECU update client 12 respectively. 13 acts as a client and is available with thevehicle update client 14 connected. It manages the application software or firmware update process, including rollback for a specific controller or partition. He is also responsible for ensuring that the state of the control unit or subarea is known at all times.

Durch die Aufteilung der Gesamtfunktionalität (des Fahrzeug-Teilsystems) in abgeschlossene und entkoppelte Komponenten können Einflussfaktoren, die zu einem geänderten Verhalten der Gesamtfunktionalität führen würden, auf die Teilfunktionalitäten reduziert werden. Dazu werden als solche bekannte Architektur- und Entwurfsmuster (design patterns) verwendet wie bspw. Redundanzfreiheit (kohärente Systeme mit definierten und getrennten Aufgabenbereichen reduzieren Redundanz) sowie lose Kopplung, die insgesamt den Einfluss von unbekannten Inputwerten oder auslastenden Einflüssen und Bedingungen auf die betreffenden Schnittstellen eingrenzen, reduzieren oder dort erkennbar machen.By dividing the overall functionality (of the vehicle subsystem) into closed and decoupled components, influencing factors that would lead to a changed behavior of the overall functionality can be reduced to the sub-functionalities. For this purpose known architecture and design patterns are used as for example redundancy-free (coherent systems with defined and separate task areas reduce redundancy) as well as loose coupling, which limit the influence of unknown input values or exhaustive influences and conditions on the respective interfaces , reduce or make recognizable there.

Das technische System basierend auf dem hier vorgestellten Design und der hier vorgestellten Architektur ermöglicht vor allem den Umgang mit invaliden oder unbekannten Inputwerten oder auslastenden Einflussfaktoren und Bedingungen in einer Weise, dass sich solche Einflussfaktoren nur auf das Verhalten der betreffenden Komponenten auswirken (Lokalität) sowie sich dieses veränderte Verhalten an den Schnittstellen zu übergeordneten, überwachenden und kontrollierenden Komponenten erkennbar zeigt (Transparenz). Dies ermöglicht eine abgestufte und ganzheitliche Reaktion des Systems.Above all, the technical system based on the design presented here and the architecture presented here makes it possible to deal with invalid or unknown input values or load factors and conditions in such a way that such influencing factors only affect the behavior of the respective components (locality) and themselves This change in behavior at the interfaces to superordinate, monitoring and controlling components is recognizable (transparency). This allows for a graded and holistic reaction of the system.

Das Zusammenspiel der Funktionen in diesem Lösungssystem betrifft die Interaktion, wenn SW- oder Hardwarekomponenten oder Funktionen ausfallen oder sich nicht innerhalb festgelegter Sequenzen mit Ergebnissen an übergeordnete Komponenten zurückmelden etc. Umgekehrt bewirkt bspw. der Ausfall übergeordneter Instanzen keine oder eine geringe Auswirkung auf konkrete und spezialisierte Komponenten bezüglich eines SW- und insbesondere FW-Updates.The interaction of the functions in this solution system relates to the interaction when SW or hardware components or functions fail or do not report back to higher-level components within specified sequences etc. Conversely, for example, the failure of higher-level instances has no or little effect on specific and specialized ones Components relating to a SW and in particular FW update.

Die entkoppelte Robustheit ist in den nachfolgenden Punkten im Detail beschrieben:
Die Robustheit des Systems wird in einem ersten Schritt dadurch erhöht, dass die Robustheit des Gesamtverhaltens des Systems während des OTA-SW- und insbesondere FW-Updates durch auslastende und ggf. abnormale Systemumgebungsbedingungen nicht beeinflusst wird, sondern Auswirkungen eines Teilverhaltens bereits durch die entkoppelten Komponenten erkannt und abgefangen werden.
The decoupled robustness is described in detail in the following points:
The robustness of the system is increased in a first step by the fact that the robustness of the overall behavior of the system during the OTA-SW and in particular FW-update is not influenced by load-bearing and possibly abnormal system environment conditions, but effects of a partial behavior already by the decoupled components be detected and intercepted.

Die Entkopplung der Gesamtfunktionalität und der Zugriff auf die Teilfunktionalitäten, die von den Komponenten über die lose Kopplung anderen Komponenten und Funktionen bereitgestellt werden, bringt in einem zweiten Schritt eine über die lose Kopplung benötigte Abhängigkeits- und Verantwortlichkeitsbeziehung mit sich. D. h. die OTA-SW- und insbesondere FW-Update-Gesamtfunktionalität ist entkoppelt und bewirkt, dass Teilfunktionalitäten von übergeordneten Komponenten an untergeordnete entkoppelte Komponenten zur Ausführung delegiert werden und von den untergeordneten Komponenten an die übergeordneten Komponenten bereitgestellt werden müssen.The decoupling of the overall functionality and the access to the partial functionalities that are provided by the components via the loose coupling of other components and functions, brings in a second step, a dependency and accountability relationship required over the loose coupling. Ie. the OTA SW and in particular FW update overall functionality is decoupled and causes sub-functionalities of parent components to be delegated to child decoupled components for execution and must be provided by the child components to the parent components.

In einem dritten Detaillierungsschritt des hier vorgeschlagenen Systems erfolgen die Fortschrittsberichterstattung (via lose Kopplung festgelegt) sowie die Einholung eines Einverständnisses der übergeordneten Komponente und Funktion. Dies ist dann von Vorteil, wenn besondere Bedingungen eintreten. Man betrachte folgendes Beispiel: Eine delegierte Aktion muss wiederholt ausgeführt werden, weil bei der Ausführung Fehler aufgetreten sind.In a third step in the detailing of the system proposed here, the progress reporting (defined via loose coupling) and the approval of the superordinate component and function are carried out. This is advantageous when special conditions occur. Consider the following example: A delegated action must be executed repeatedly because of errors during execution.

Jede der folgenden Komponenten führt basierend auf ihrer Spezialisierung (bspw. robuster Download oder fehlerfreies Ablegen und Abspeichern der Daten) die zugeordneten Aktionen ununterbrochen durch, solange diese nicht von übergeordneten Komponenten und Funktionen anders gesteuert (unterbrochen, pausiert, fortgeführt) werden, wie in2 dargestellt: ein über die Luftschnittstelle29 mit einem Backend20 wechselwirkendes Verbindungsmodul31, ein mit dem Verbindungsmodul31 wechselwirkendes robustes Datenhaltungsmodul32 innerhalb des Fahrzeuges10, eine mit dem Verbindungsmodul31 und dem Datenhaltungsmodul32 wechselwirkende Koordinierungsschicht33, eine mit dem Verbindungsmodul31 und der Koordinierungsschicht33 wechselwirkende Benutzerinteraktion34 und eine mit dem Datenhaltungsmodul32 und der Koordinierungsschicht33 wechselwirkende Installation35.Each of the following components, based on their specialization (for example, robust download or error-free storage and storage of the data) performs the associated actions continuously, as long as they are not otherwise controlled (interrupted, paused, continued) by higher-level components and functions, as in 2 shown: a via theair interface 29 with abackend 20interactive connection module 31 , one with theconnection module 31 interactive robustdata storage module 32 inside thevehicle 10 , one with theconnection module 31 and thedata retention module 32interactive coordinating layer 33 , one with theconnection module 31 and thecoordination layer 33interactive user interaction 34 and one with thedata retention module 32 and thecoordination layer 33interactive installation 35 ,

Das Verbindungsmodul31 umfasst dabei eine autonome Interaktion mit dem Backend20 und eine Kenntnisnahme und Auswertung letzter bekannter Fahrzeugzustände sowie eine autonome Durchführung eines aufgetragenen Downloads oder Uploads und eine robuste Handhabung einer Verbindung über die Luftschnittstelle29. Das Datenhaltungsmodul32 umfasst eine autonome Speicherung und Einräumung von Zugang sowie eine von der Koordinierungsschicht33 abhängige Reservierung und Freigabe von Speicherplatz. Die Installation35 erfolgt mit einer durch die Koordinierungsschicht33 erteilten Erlaubnis sowie einer auf ein Zielobjekt begrenzten Steuerungsgewalt und umfasst eine Steuerung, Kontrolle, Entscheidung, Ausführung und Überwachung der Installation36.Theconnection module 31 includes an autonomous interaction with thebackend 20 and an acknowledgment and evaluation of the last known vehicle states as well as an autonomous execution of a downloaded download or upload and a robust handling of a connection via theair interface 29 , Thedata retention module 32 includes autonomous storage and granting of access as well as one of theco-ordination layer 33 dependent reservation and release of storage space. Theinstallation 35 takes place with one through thecoordination layer 33 granted permission, as well as a control power limited to a target object, and includes control, control, decision, execution and supervision of theinstallation 36 ,

Die Richtung, in der eine Reporting-Übergabe (handover) erfolgt, ist zum einen vom Fahrzeugupdate-Client14 gesteuert, wenn sie weitere untergeordnete Komponenten betrifft – bspw. Softwareupdate-Clients12,13 –, und zum anderen auch von den Komponenten selbst, bspw. dem Verbindungsmodul31 mittels Download-Client11 oder Gerätemanagement-Client16 oder der Benutzerinteraktion34. Denn wenn auf Grund einer kritischen Schwachstelle (single point of failure) der Fahrzeugupdate-Client14 ausfällt und beteiligte Komponenten wie die Benutzerinteraktion34 oder das Verbindungsmodul31 eine Interaktion mit dem Fahrzeugupdate-Client14 versuchen, diesen aber auf Grund des Ausfalls nicht erreichen, dann sind diese mindestens selbstständig in der Lage, ihre eigene Komponentenfunktionalität zu nutzen und das Reporting und Interaktion durchzuführen und den letzten bekannten Schritt für weitere Aktionen zu verwenden. Im Beispiel des Verbindungsmanagements31 würde ein Gerätemanagement-Client16 bei dem Backend20 über bspw. den Ausfall eines Fahrzeugupdate-Clients14 unter Hinzunahme der letzten bekannten Schritte und Informationen berichten. Im Falle der Benutzerinteraktion34 würde der Benutzer informiert werden, dass es interne Fehler gibt und der Fahrzeugupdate-Client14 nicht erreichbar ist (Autonomie).The direction in which a handover takes place is on the one hand by thevehicle update client 14 controlled if it affects other child components - for example,software update clients 12 . 13 -, And on the other hand of the components themselves, for example. Theconnection module 31 viadownload client 11 ordevice management client 16 or theuser interaction 34 , Because if due to a critical vulnerability (single point of failure) of thevehicle update client 14 fails and involved components like theuser interaction 34 or theconnection module 31 an interaction with thevehicle update client 14 However, if they fail to achieve this because of the failure, they will at least be able to independently leverage their own component functionality to perform the reporting and interaction and use the last known step for further action. In the example ofconnection management 31 would be adevice management client 16 at thebackend 20 about, for example, the failure of avehicle update client 14 with the addition of the last known steps and information. In the case ofuser interaction 34 the user would be informed that there are internal errors and thevehicle update client 14 is not achievable (autonomy).

Nachfolgend wird die auch in2 dargestellte und bereits erläuterte Robustheit des FOTA-Gesamtsystems basierend auf der entkoppelten Robustheit, Lokalität, Transparenz und Autonomie dargestellt, indem für jede der Funktionskomponenten das Zusammenspiel mit anderen entkoppelten Funktionskomponenten beschrieben wird.The following will also be in 2 illustrated and already explained robustness of the FOTA total system based on the decoupled robustness, locality, transparency and autonomy represented by the interaction with other decoupled functional components is described for each of the functional components.

Die robuste Koordinierungsschicht33 mittels des Fahrzeugupdate-Clients14 behandelt Probleme auf ECU-Ebene bis hin zur Fahrzeugebene sowie als weitere Option der Unfall-Ebene (zu lösen im Backend20).Therobust coordination layer 33 using thevehicle update client 14 deals with problems at the ECU level up to the vehicle level as well as another option at the accident level (to be solved in the backend 20 ).

Die Orchestrierungskomponente ist in der Lage, zu jedem separat durchzuführenden Update alle korrespondierenden Daten und Aktionen unverwechselbar eindeutig zu identifizieren, zu administrieren und den Zugriff darauf zu ermöglichen, indem sie die Existenz zu den Daten oder Aktionen verwaltet und administriert und die Referenz (oder die Daten selbst) dem Datenhaltungsmodul32, Verbindungsmodul31 oder Updateclientkomponenten zur Verfügung stellt – ähnlich wie es eine Werkstattperson manuell tun würde.The orchestration component is capable of uniquely uniquely identifying, administering, and accessing each of the corresponding data and actions separately for each update to be performed separately, by managing and administering the existence of the data or actions and maintaining the reference (or data) even) thedata storage module 32 ,Connection module 31 or update client components - much like a workshop person would do manually.

Die Orchestrierungseinheit nutzt die Funktionalitäten des Datenhaltungsmanagements32 und des Verbindungsmanagements31, indem es die notwendigen Informationen bereitstellt, damit der Download von Updatedaten entkoppelt von der Koordinierungsschicht33 durchgeführt und die heruntergeladenen Daten an einem zugesicherten Speicherort abgespeichert werden können und für den betreffenden und anstehenden Download genügend Speicherplatz vorhanden ist, sodass diese im Fahrzeug10 abgespeicherten Daten zu jedem späteren Zeitpunkt, solange die Orchestrierungseinheit die Existenz der Daten ermöglicht und verwaltet, von anderen berechtigten Komponenten verwendet werden können.The orchestration unit uses the functionalities of thedata management system 32 andconnection management 31 by providing the necessary information for the download of update data decoupled from thecoordination layer 33 and the downloaded data can be stored in a secured location and sufficient space is available for the relevant and pending download, so that they are in thevehicle 10 stored data at any later time, as long as the Orchestration unit allows the existence of the data and manages to be used by other authorized components.

Die Koordinierungsschicht33 stellt alle notwendigen Eingangsgrößen sicher, die es der Koordinierungsschicht33 erlauben, jederzeit ein Update überhaupt zu beginnen, fortzusetzen oder, wenn für den Update definierte Eingangsgrößen und Sollwerte, die der Koordinierungsschicht33 zur Verfügung stehen, nicht mit den realen Zuständen von ECUs, Clients, des Fahrzeuges10 oder der Benutzerinteraktion34 übereinstimmen, auch stoppen zu lassen oder gar, wenn die Koordinierungsschicht33 parallel zu einer laufenden Updateinstallation Rückmeldung vom Backend20 über das Verbindungsmodul31 erhält, das bereits zugeordnete Update bspw. nicht durchzuführen und zu verwerfen (3). Das Sicherstellen aller notwendigen Eingangsgrößen beinhaltet auch, wenn die notwendigen Fahrzeugumgebungsbedingungen existieren und es der Koordinierungsschicht33 erlauben, aktiv eine Fahrzeugfunktion zu aktivieren oder deaktivieren und so bspw. eine elektronische Handbremse zu betätigen, wenn dies als ein Sollwert definiert wurde, der existieren muss, damit ein Update durchgeführt werden kann. Die Koordinierungsschicht33 ist zudem in der Lage, alle durchgeführten aktiven Aktionen zur Erreichung eines bestimmten „für den Updatevorgang günstigen“ Fahrzeugzustandes in den ursprünglichen Zustand zurückzuversetzen und so bspw. die elektronische Handbremse wieder zu deaktivieren, wenn das Update durchgeführt wurde.Thecoordination layer 33 ensures all the necessary input variables, which are thecoordination layer 33 allow anytime to start an update at all, continue or, if defined for the update inputs and setpoints, that of thecoordination layer 33 are available, not with the real states of ECUs, clients, thevehicle 10 or theuser interaction 34 match, even stop or even if thecoordination layer 33 parallel to an ongoing update installation Feedback from thebackend 20 via theconnection module 31 receives, for example, the already assigned update not to perform and discard ( 3 ). Ensuring all necessary inputs also includes when the necessary vehicle environment conditions exist and the coordinatinglayer 33 allow to actively activate or deactivate a vehicle function and thus, for example, to operate an electronic handbrake, if this has been defined as a setpoint that must exist in order for an update to be carried out. Thecoordination layer 33 is also able to achieve all active actions restore a certain "for the update process" favorable vehicle condition in the original state and so, for example, the electronic handbrake again disable when the update was performed.

Beispielsweise kann die Koordinierungsschicht33 bezugnehmend auf3 von mindestens einem der folgenden Umstände abhängen: die Fahrzeugzustände50 können abgefragt werden (37) und entsprechen vorgegebenen Sollwerten (38); ein Fahrzeughalter oder Fahrer des Fahrzeuges10 stimmt der Installation36 zu (39); die Zustände51 der Steuergeräte können abgefragt werden (40) und entsprechen vorgegebenen Sollwerten (41); eine für die Installation36 benötigte Zeit ist insgesamt und für die betreffenden Steuergeräte bekannt (42); eine für das Rollback36 benötigte Zeit ist insgesamt und für die betreffenden Steuergeräte bekannt (43); ein Fortschritt der Softwareupdate-Clients12,13 kann abgefragt werden (44) und entspricht vorgegebenen Sollwerten (45); eine Funktionalität der Softwareupdate-Clients12,13 und Steuergeräte kann genutzt werden (46); eine Ablauflogik oder Konfiguration gibt an, wie lange auf eine nicht zugreifbare Information zu warten ist (47); ein Zugriff auf Update- und Rollbackdaten von allen betreffenden Komponenten ist möglich (48); oder Update- und Rollbackdaten sind lokal vorhanden (49).For example, thecoordination layer 33 Referring to 3 depend on at least one of the following conditions: thevehicle conditions 50 can be queried ( 37 ) and correspond to predetermined setpoints ( 38 ); a vehicle owner or driver of thevehicle 10 agrees with theinstallation 36 to ( 39 ); the conditions 51 the control units can be queried ( 40 ) and correspond to predetermined setpoints ( 41 ); one for theinstallation 36 time required is known in its entirety and for the relevant control units ( 42 ); one for therollback 36 time required is known in its entirety and for the relevant control units ( 43 ); an advance ofsoftware update clients 12 . 13 can be queried ( 44 ) and corresponds to predetermined setpoints ( 45 ); a functionality of thesoftware update clients 12 . 13 and ECUs can be used ( 46 ); a flow logic or configuration indicates how long to wait for inaccessible information ( 47 ); Access to update and rollback data from all relevant components is possible ( 48 ); or update and rollback data are local ( 49 ).

Alle Softwareupdate-Clients12,13 sind in der Lage, das eigentliche Update (die Installation36) einer ECU spezifisch für diese durchzuführen. Softwareupdate-Clients12,13 sind wie die anderen dem Fahrzeugupdate-Clients14 untergeordneten Clients – bspw. der Download-Client11 – in der Lage, spezifisch, in sich abgeschlossen und spezialisiert Funktionen auszuführen (4). Softwareupdate-Clients12,13 sind außerdem in der Lage, in ihrer Funktion Fehler festzustellen und Gegenmaßnahmen einzuleiten. Daher interagieren sie mit dem Fahrzeugupdate-Client14 – bspw. um Berechtigungen zu erhalten, wenn ein Rollback36 ausgeführt werden muss und es Auswirkung auf Funktionalität auf der Fahrzeugebene hat oder Reporting-Information an das Backend20 oder über eine Benutzerinteraktion34 zu übermitteln –, damit der Fahrzeugupdate-Client14, der den Fahrzeugzustand50 kennt und diesen steuern kann, letztendlich das Gesamtupdate steuern kann, einen definierten Zustand51 des Fahrzeuges10 unter Berücksichtigung der Verfügbarkeit der Fahrtüchtigkeit des Fahrzeuges10 gewährleisten kann oder im Falle von nicht einhaltbaren Bedingungen bezüglich des Gesamtsystems oder gar im Falle von unlösbaren Problemen (bspw. eine ECU reagiert nach dem Update gar nicht mehr und der Fahrzeugupdate-Client14 erkennt das, damit eine Fahrzeugfahrfunktion beeinträchtig ist) die Übergabe an einen Benutzer durchführen kann. Im Falle, dass ein Softwareupdate-Client12,13 nicht reagiert, ist der Fahrzeugupdate-Client14 in der Lage, Gegenmaßnahmen einzuleiten.Allsoftware update clients 12 . 13 are able to do the actual update (the installation 36 ) of an ECU specific to it.Software Update clients 12 . 13 like the others are thevehicle update clients 14 subordinate clients - eg the download client 11 - able to perform specific, self-contained and specialized functions ( 4 ).Software Update clients 12 . 13 They are also able to identify errors in their role and take countermeasures. Therefore, they interact with the vehicle update client 14 - For example, to get permissions when arollback 36 must be executed and it has an impact on functionality at the vehicle level or reporting information to thebackend 20 or via auser interaction 34 to submit - to thevehicle update client 14 that thevehicle condition 50 knows and can control this, ultimately can control the overall update, a defined state 51 of thevehicle 10 taking into account the availability of the vehicle's ability to drive 10 or even in the case of unresolvable problems (for example, an ECU does not respond after the update and thevehicle update client 14 recognizes that for a vehicle driving function is impaired) can perform the transfer to a user. In the case of asoftware update client 12 . 13 is unresponsive, is thevehicle update client 14 able to take countermeasures.

Der Fahrzeugupdate-Client14 sendet zu jedem relevanten Updateschritt Reporting-Informationen an das Backend20, indem er die Informationen von untergeordneten Komponenten und Funktionen sammelt und diese dem Verbindungsmodul31 übergibt, welches dazu ausgelegt ist, solche Daten über einen vorhandenen Kommunikationsweg eigenständig an das Backend20 zu verschicken.Thevehicle update client 14 sends reporting information to the backend for eachrelevant update step 20 by collecting the information from child components and functions and collecting them from theconnection module 31 which is designed to independently transfer such data to the backend via an existingcommunication path 20 to send.

Der Fahrzeugupdate-Client14 entscheidet situationsabhängig, wann und über welchen Interaktionsweg – etwa die Benutzerinteraktion34 über eine Mensch-Maschine-Schnittstelle (human-machine interace, HMI) oder anderweitige Verbindung – eine Übergabe an einen Endbenutzer erfolgt.Thevehicle update client 14 decides depending on the situation, when and via which interaction path - for example theuser interaction 34 via a human-machine interface (HMI) or other connection - a transfer to an end user takes place.

Das robuste Datenhaltungsmodul32 (Content Management18) wird von der Koordinierungsschicht33 gesteuert und erhält Informationen über den zur Verfügung zu stellenden Speicherplatz für einen anstehenden Download oder bspw. für einen Backup von Daten. Da die Koordinierungsschicht33 die übergeordnete Komponente und Funktion ist, ist sichergestellt, dass ein bspw. für einen anstehenden Download zu reservierender Speicherplatz solange sichergestellt ist, bis die Orchestrierungsfunktion diesen wieder freigibt – beispielsweise nach der erfolgreichen Updateinstallation, nach einem Rollback36 oder nachdem ein Update vollständig verworfen wurde.The robust data storage module 32 (Content Management 18 ) is from thecoordination layer 33 is controlled and receives information about the space to be made available for a pending download or, for example, for a backup of data. Because thecoordination layer 33 the parent component and function is to ensure that, for example, for a pending download space to be reserved until the orchestration function releases this again - for example, after the successful update installation, after arollback 36 or after an update has been completely discarded.

Das Datenhaltungsmodul32 meldet der Koordinierungsschicht33 (sowie anderen Komponenten wie dem Verbindungsmodul31) fortlaufend Reporting – bspw. bei Fehlern oder wenn ein Download einer geplanten Größe vollständig vorliegt und vom Datenhaltungsmodul32 vollständig abgespeichert wurde, sodass die Koordinierungsschicht33 weitere Update- und Installationsschritte durchführen und Bedingungen überprüfen kann (siehe3). Alternativ kann auch das Verbindungsmodul31 anstelle des Datenhaltungsmanagements32 der Koordinierungsschicht33 direkt über Fehler bezüglich eines Downloads fortlaufend berichten.Thedata retention module 32 reports the coordination layer 33 (as well as other components such as the connection module 31 ) Continuous reporting - eg in case of errors or when a download of a planned size is complete and from thedata storage module 32 was completely saved, so thecoordination layer 33 carry out further update and installation steps and check conditions (see 3 ). Alternatively, theconnection module 31 instead ofdata management 32 thecoordination layer 33 Report continuously about errors related to a download.

Das robuste Verbindungsmodul31 mittels des Download-Clients11 und Gerätemanagement-Clients16 lädt eindeutig identifizierbare Daten vom Backend20 über bekannte Schnittstellen und Kommunikationsmöglichkeiten ins Fahrzeug10. Es ist in der Lage, indem es den tatsächlich im Fahrzeug10 bereits heruntergeladenen und sicher abgespeicherten Datensatz durch Interaktion über eine lose Kopplung mit dem Datenhaltungsmodul32 überprüfen und den exakten fehlenden Datensatz vom Backend20 anfordern kann und ab dem Byte den Download fortsetzen kann, bei dem es einst aufgehört hat und der zuletzt tatsächlich im Fahrzeug10 sicher abgelegt wurde, und so Luftschnittstellenverbindungsabbrüche und andere Rückmeldungen des Backends20 an den Komponentensystemgrenzen derart fehlerfrei und robust behandelt werden, über einen robusten Weg Daten ins Fahrzeug10 vollständig und fehlerfrei abzulegen.Therobust connection module 31 by means of thedownload client 11 anddevice management clients 16 loads uniquely identifiable data from thebackend 20 via known interfaces and communication possibilities into thevehicle 10 , It is capable of keeping the vehicle actually in thecar 10 already downloaded and securely stored record through interaction via a loose coupling with thedata storage module 32 check and the exact missing record from thebackend 20 request and from the byte can continue the download, where it once stopped and the last actually in thevehicle 10 was safely dropped, and so air interface disconnects and other feedback from thebackend 20 at the component system boundaries are treated so error-free and robust, over a robust way data into thevehicle 10 store completely and without errors.

Das Ablegen von heruntergeladenen Daten ermöglicht das Datenhaltungsmodul32, welches die Funktionalität anbietet, Daten so, wie sie übergeben wurden, über eine eindeutige Referenz vollständig und fälschungssicher abzuspeichern.The data storage module makes it possible to store downloadeddata 32 , which offers the functionality to store data as they were handed over completely and forgery-proof via a unique reference.

Das Verbindungsmodul31 reagiert auf unterschiedliche Inputs – bspw. wenn eine Verbindung zu einem Backend20 plötzlich unterbrochen wird – oder auf spezifischere Antwortinformationen des Backends20. Es reagiert auch bspw. darauf und steuert den Download- und Wiederaufnahmevorgang (resume) abhängig von Inputs des Datenhaltungsmanagements32, wenn bspw. das Ablegen und Abspeichern von herunterladenden Daten Fehler verursacht.Theconnection module 31 responds to different inputs - for example when connecting to abackend 20 suddenly interrupted - or more specific response information of thebackend 20 , It also responds to it, for example, and controls the download and resume process based on inputs from thedatabase management system 32 if, for example, the storage and saving of downloading data causes errors.

Das Verbindungsmodul31 ist in der Lage, vom Backend20 empfangenen Input an seine verantwortlichen Komponenten weiterzuleiten. In diesem Fall ist der Fahrzeugupdate-Client14 die übergeordnete Instanz, die alle das Fahrzeug10 betreffenden Funktionalitäten bezüglich eines Updates steuert und auch auf Funktionalitäten untergeordneter Komponenten zurückgreift.Theconnection module 31 is able to from thebackend 20 forward the received input to its responsible components. In this case, the vehicle update client is 14 the parent instance, all thevehicle 10 controls relevant functionalities regarding an update and also uses functionalities of subordinate components.

Das Backend20 stellt dem Verbindungsmodul31 von jedem Fahrzeug10 spezifische Updatedaten zur Verfügung und stellt die Informationen bereit, die von einem Verbindungsmodul31 und einem Fahrzeugupdate-Client14 genutzt werden können, um den nötigen Speicherplatz für ein anstehendes Update rechtzeitig im Fahrzeug10 bereitzustellen und einen robusten Download der betreffenden für das Fahrzeug10 eindeutigen und unverwechselbaren Updatedaten über die Luftschnittstelle29 ins Fahrzeug10 zu laden, sodass ein robuster, ressourcenschonender und reibungsloser Update vonstattengehen kann.Thebackend 20 represents theconnection module 31 from everyvehicle 10 Specific update data is available and provides the information provided by aconnection module 31 and avehicle update client 14 can be used to the necessary space for an upcoming update in time in thevehicle 10 Provide a robust download of the relevant for thevehicle 10 unique and unmistakable update data via theair interface 29 into thevehicle 10 load so that a robust, resource-saving and smooth update can take place.

Das Backend-Teilsystem erhält durch das Verbindungsmodul31 eines Fahrzeuges10 über jeden definierten Updateschritt des Fahrzeugs zu einer betreffenden Kampagne zusätzlich Reporting-Informationen neben Informationen über aufgerufene Backendschnittstellen. Basierend auf den dem Backend20 zur Verfügung stehenden Informationen über Schnittstellenaufrufe sowie Reporting-Informationen von Fahrzeugen10 bezüglich einer Kampagne führt das Backend20 Ist-Soll-Vergleiche dieser zur Verfügung stehenden Reporting-Werte mit den in der betreffenden Kampagne festgelegten Schwellwerten durch und erwirkt ggf. Steuerungs-Aktionen (Kampagne pausieren, stoppen, fortlaufen lassen) seitens der restlichen Fahrzeuge10, bei denen das betreffende Update noch ansteht oder gerade durchgeführt wird. Durch das Zusammenspiel der Backend- und Fahrzeugteilsysteme wird die Robustheit erhöht, indem auf Resultate eines jeden Updateschritts einer vorgegebenen Anzahl von Fahrzeugen10 auf eine robuste und korrekte Ausführung eines Updates geschlossen wird und fehlerhafte oder falsche Updates an zukünftigen Fahrzeugen10 vermieden werden.The backend subsystem gets through theconnection module 31 of avehicle 10 In addition to reporting information about the backend interfaces accessed via each defined update step of the vehicle for a campaign in question. Based on the thebackend 20 available information about interface calls as well as reporting information ofvehicles 10 The backend is related to acampaign 20 Actual target comparisons of these available reporting values with the thresholds defined in the campaign in question and, if applicable, obtains control actions (pause, stop, and run the campaign) on the remainingvehicles 10 in which the relevant update is still pending or is currently being performed. The interaction of the backend and vehicle subsystems increases the robustness by looking at the results of each update step of a given number of vehicles 10 a robust and correct execution of an update is concluded and incorrect or incorrect updates tofuture vehicles 10 be avoided.

Basierend auf der Analyse von Reporting-Informationen können Kampagnen- und Updateverantwortliche sogar eine Updatekampagne verbessern und wieder ausrollen.Campaign and update managers can even refine and roll out an update campaign based on the analysis of reporting information.

Das vorgestellte Zusammenspiel der Funktionen – auf Teilsystemebene (wie Backend- und Fahrzeug-Teilsysteme zusammenspielen) sowie auf Fahrzeugebene (wie Komponenten und Funktionen zusammenspielen) – stellt dar, wie die traditionellen Schritte einer Werkstattperson automatisiert im OTA-Szenario vom Fahrzeug10 automatisiert durchgeführt werden. Die Koordinierungsschicht33 entspricht hauptsächlich der Werkstattperson, die den Fahrzeugzustand50 für ein robustes und korrektes Update sicherstellt, bspw. dass genügend Stromversorgung vorhanden ist, indem eine externe Reservebatterie am Fahrzeug10 angeschlossen wird (Fahrzeugupdate-Client14, welcher Ist- und Soll-Zustände der Fahrzeugsystemumgebung passiv und aktiv betrachtet und bspw. vor dem Update überprüft, ob der Batteriezustand der Dauer eines anstehenden Updates entspricht und diesen fortlaufend während des Updates überprüft) oder indem für jedes betreffende Steuergerät das Überschreiben des Flash-Speichers (flashing) einzeln oder von einem zentralen Werkstattdiagnosetester ausgeführt wird, diesem aber die richtigen Daten zur Verfügung gestellt werden (Fahrzeugupdate-Client14, der die eigentliche Update-Installation36 an betreffende Softwareupdate-Clients12,13 delegiert und interagiert) und nach jedem Flash- oder Installationsschritt an einer einzelnen ECU überprüft wird, ob das Überschreiben und die Installation36 fehlerfrei erfolgt sind (Fahrzeugupdate-Client14, der die Ist-Soll-Zustände51 der am Update betreffenden ECUs und Softwareupdate-Clients12,13 vor, während und nach dem Update und nach jeder Installation36 kennt und aktiv beeinflusst).The presented interplay of functions - at the subsystem level (how backend and vehicle subsystems interact) and at the vehicle level (how components and functions interact) - represents how the traditional steps of a workshop person are automated in the OTA scenario of thevehicle 10 be carried out automatically. Thecoordination layer 33 Corresponds mainly to the workshop person who determines thevehicle condition 50 for a robust and correct update ensures, for example, that sufficient power is available by an external backup battery on thevehicle 10 is connected (vehicle update client 14 which passively and actively views the actual and target states of the vehicle system environment and, for example, checks before updating whether the battery state corresponds to the duration of a pending update and continuously checks this during the update) or by overwriting the flash memory for each control device concerned. Memory (flashing) is performed individually or by a central workshop diagnostic tester, but this the correct data is provided (vehicle update client 14 that theactual update installation 36 to relevantsoftware update clients 12 . 13 delegated and interacts) and after each flash or installation step on a single ECU checks whether overwriting andinstallation 36 error-free (vehicle update client 14 , which is the actual target states 51 the update ECUs andsoftware update clients 12 . 13 before, during and after the update and after eachinstallation 36 knows and actively influences).

Diese gesamte Koordinierungsschicht33 eines Fahrzeugupdates ist in erweiterter Form Aufgabe der Koordinierungsschicht33 bzw. des Fahrzeugupdate-Clients14, welcher all die Orchestrierungs- und Managementarbeit während des Fahrbetriebs des Fahrzeugs10 durchführen muss und kann und entscheiden muss, wann das Fahrzeug10 für welche Teilaktionen in einem bestimmten Fahrzeugzustand50 sein muss (und sich bspw. nicht bewegen darf), indem er die Sollwerte des betreffenden Steuergerätes vergleicht und auf diese aktiv reagiert.This entire coordination layer 33 A vehicle update is, in an expanded form, the task of thecoordination layer 33 or thevehicle update client 14 Doing all the orchestration and management work while driving thevehicle 10 must and can and must decide when thevehicle 10 for which partial actions in acertain vehicle state 50 must be (and may not move, for example), by comparing the setpoints of the relevant control unit and actively responding to them.

Die nachfolgenden Anwendungsfälle (use cases) stellen beispielhaft Abläufe dar. Die Anwendungsfälle enthalten Kernaktionen und Kernschritte, die ausgeführt werden sollten. Die Kernschritte entsprechen den bereits vorgestellten Funktionskomponenten (Verbindungsmodul31, Datenhaltungsmodul32, Koordinierungsschicht33) oder sind zum Teil in diesen enthalten und abgeschlossen von den anderen Funktionskomponenten beschrieben.The following use cases are examples of processes. The use cases contain core actions and core steps that should be executed. The core steps correspond to the already presented functional components (connection module 31 ,Data storage module 32 , Coordination layer 33 ) or are partially contained in these and completed by the other functional components.

Das Verbindungsmodul31 erhält Daten von einem authentifizierten Backend20. In den Daten sind FOTA-Informationen enthalten, welche vom Verbindungsmodul31 an die Koordinierungsschicht33 als der FOTA-Daten zugeordneten Einheit weitergeleitet und bereitgestellt werden. Parallel hat das Verbindungsmodul31 Reporting-Daten über den Erhalt und über eine erfolgreiche Weiterverteilung der FOTA-Daten an die verantwortliche Komponente zwischengespeichert und (je nachdem, wie das Verbindungsmodul31 konfiguriert ist, mit dem Backend20 zu kommunizieren) ggf. dem Backend20 sofort mitgeteilt.Theconnection module 31 gets data from an authenticatedbackend 20 , The data includes FOTA information provided by theconnection module 31 to thecoordination layer 33 be forwarded and provided as the unit associated with FOTA data. Parallel has theconnection module 31 Reporting data about the receipt and successful redistribution of the FOTA data is cached to the responsible component and (depending on how theconnection module 31 is configured with thebackend 20 if necessary) to thebackend 20 communicated immediately.

FOTA-Updateverfügbarkeitsinformationen erreichen somit nicht nur das Fahrzeug10 (bspw. weil vorher eine Updateverfügbarkeitsüberprüfung über einen Endbenutzer oder das Backend20 ausgelöst wurde), sondern auch die verantwortliche Zielfunktionskomponente (Koordinierungsschicht33 bzw. Fahrzeugupdate-Client14) im Fahrzeug10. Diese verantwortliche Komponente interpretiert die FOTA-Daten und erkennt ein zur Verfügung stehendes Update, welcher Speicherplatz für den Download der eigentlichen Update- und Rollbackdaten benötigt wird und inwiefern und ob eine Benutzerinteraktion34 erfolgen muss – bspw., dass zuvor eine Lizenzvereinbarung (license agreement) vom Benutzer eingeholt werden muss, dass im Allgemeinen selbst der Download vom Benutzer über eine Interaktion bestätigt werden muss oder dass es sich um ein „Silent-Update“ zur Ausführung im Hintergrund handelt, ohne dass der Benutzer für das Update miteinbezogen werden muss, oder weil eine Lizenzvereinbarung überhaupt nicht erforderlich ist.FOTA update availability information thus not only reaches the vehicle 10 (For example, because before an update availability check on an end user or thebackend 20 was triggered), but also the responsible objective function component (coordination layer 33 or vehicle update client 14 ) in thevehicle 10 , This responsible component interprets the FOTA data and recognizes an available update which storage space is required for the download of the actual update and rollback data and to what extent and whether auser interaction 34 for example, that a license agreement must first be obtained from the user, that in general the download itself must be confirmed by the user via an interaction, or that it is a "silent update" for background execution without having to involve the user in the update, or because a license agreement is not required at all.

Parallel zu jedem beschriebenen Schritt werden für das Backend20 bestimmte Reporting-Informationen an das Verbindungsmodul31 übergeben. Das Verbindungsmodul31 zwischenspeichert diese, um sie zu einem bestimmten geeigneten Zeitpunkt an das Backend20 zu verschicken, oder verschickt diese ggf. sofort nach der Überreichung an das Backend20. Das Backend20 ist in der Lage, diese Reporting-Informationen über die Ausführung des Updates in einem Fahrzeug10 zu interpretieren und diese Art der Reporting-Informationen aggregiert über viele weitere Fahrzeuge10 zu nutzen, um die Updatekampagne zu steuern und bspw. zu pausieren, wenn die Reporting-Informationen über bestimmte Updateschritte fehlerhafte Ausführungen erkennen lassen.Parallel to each described step will be for thebackend 20 certain reporting information to theconnection module 31 to hand over. Theconnection module 31 caches them to the backend at a certainappropriate time 20 to send or, if necessary, send them immediately after the handover to thebackend 20 , Thebackend 20 is able to provide this reporting information about the execution of the update in avehicle 10 interpret this type of reporting information aggregated across manymore vehicles 10 to control and, for example, pause the update campaign if the reporting information about certain update steps indicates erroneous executions.

Die Koordinierungsschicht33 nutzt die FOTA-Updateinformationen und lässt beim Datenhaltungsmodul32 den benötigten Speicherplatz auf Verfügbarkeit überprüfen und – falls vorhanden – eindeutig identifizierbar reservieren (eindeutig daher, dass sie nach Abschluss oder in beliebigen Situationen den Speicherplatz wieder freigeben muss, so wie er reserviert wurde, da die Koordinierungsschicht33 den Fahrzeugzustand50 überprüft und steuert und für den Ablauf des gesamten Updates zuständig ist).Thecoordination layer 33 Uses the FOTA update information and leaves thedata storage module 32 check the required storage space for availability and - if available - reserve uniquely identifiable (unambiguous, therefore, that it must release the storage space after completion or in any situations, as it was reserved, since thecoordination layer 33 thevehicle condition 50 checks and controls and is responsible for running the entire update).

Hat die Koordinierungsschicht33 erst einmal alle erforderlichen Informationen eingeholt, die es benötigt (Bestätigung des Benutzers durch Interaktion, wenn es erforderlich war, oder die Zusicherung des Datenhaltungsmanagements32 über den zur Verfügung stehenden Speichers usw.), dann überreicht es parallel wieder Reporting-Informationen an das Verbindungsmodul31, führt aber auch weiterhin parallel weitere Update-Ablaufschritte aus, wenn diese in den FOTA-Informationen enthalten sind, und delegiert als nächsten Schritt den Download der eigentlichen Updatedaten an das Verbindungsmodul31, indem es den Downloaddeskriptor – einen einheitlichen Ressourcenanzeiger (uniform resource locator, URL), Zugangsinformationen (credentials) etc. – aus den FOTA-Informationen verwendet und zusätzlich dem Verbindungsmodul31 die Informationen mitgibt, wo und wie die zu herunterladenden Daten abgespeichert werden sollen (und zwar in dem reservierten Speicherbereich).Has thecoordination layer 33 once it has obtained all the necessary information it needs (confirmation of the user through interaction, if necessary, or assurance ofdata management 32 over the available memory, etc.), then it hands over parallel reporting information to theconnection module 31 , but continues to perform parallel further update process steps, if they are included in the FOTA information, and delegated as the next step, the download of the actual update data to theconnection module 31 by using the download descriptor - a uniform resource locator (URL), credentials, etc. - from the FOTA information and additionally theconnection module 31 provides the information on where and how the data to be downloaded should be stored (in the reserved memory area).

Das Verbindungsmodul31 führt die delegierte Aufgabe aus und berücksichtigt während des Downloads ggf. größere Megabyte- oder Gigabytedaten sowie unterschiedliche Einflüsse, die über die OTA-Luftschnittstelle29 auftreten können. Es agiert autonom und selbstständig und sorgt für den robusten Downloadvorgang und reagiert unmittelbar auf Anfragen bzgl. des Downloadvorgangs mit Reporting-Informationen an seine übergeordneten oder beteiligten Instanzen und Funktionskomponenten (Koordinierungsschicht33, Datenhaltungsmodul32). Auch hier werden parallel nach der Delegation der Downloadaufgabe an das Verbindungsmodul31 Reporting-Informationen zur Weiterleitung an das Backend20 an das Verbindungsmodul31 übergeben. Das Verbindungsmodul31 teilt der Koordinierungsschicht33 und Benutzerinteraktion34 den Status des Downloads mit, falls ggf. über Benutzerinteraktion34 der Status an den Benutzer weitergegeben werden muss und diese Art der Interaktion mit dem Benutzer in den FOTA-Informationen definiert und von der Koordinierungsschicht33 interpretiert wurden und daher so ausgeführt werden müssen.Theconnection module 31 Performs the delegated task and takes into account larger megabyte or gigabyte data as well as different influences during the download via theOTA air interface 29 may occur. It acts autonomously and autonomously and ensures the robust download process and responds immediately to queries regarding the download process with reporting information to its superordinate or involved instances and functional components (coordination layer 33 , Data storage module 32 ). Again, in parallel to the delegation of the download task to theconnection module 31 Reporting information for forwarding to thebackend 20 to theconnection module 31 to hand over. Theconnection module 31 shares thecoordination layer 33 anduser interaction 34 the status of the download, if necessary viauser interaction 34 the status must be passed to the user and this type of interaction with the user is defined in the FOTA information and by thecoordination layer 33 were interpreted and therefore must be carried out in this way.

Der Koordinierungsschicht33 wird es vom Verbindungsmodul31 und ggf. auch vom Datenhaltungsmodul32 mitgeteilt, sobald der Download abgeschlossen wurde und die heruntergeladenen Daten vollständig und sicher zugreifbar bereitstehen. Thecoordination layer 33 it gets from theconnection module 31 and possibly also from thedata storage module 32 as soon as the download has been completed and the downloaded data is fully and securely accessible.

Die Koordinierungsschicht33 interpretiert Datenteile – die sogenannte Update-Ablauflogik (flow) und zugehörige Bedingungen für die konkrete Updateinstallationen – aus dem heruntergeladenen Fahrzeug10-Updatepaket, die angeben, inwiefern weiterhin eine Benutzerinteraktion34 erfolgen muss und ob eine Zustimmung eingeholt werden muss, bspw. das Update zu einem von der Koordinierungsschicht33 vorgeschlagenen Zeitpunkt auszuführen sowie zusätzlich basierend auf den nachfolgenden FOTA-Ablauflogikdaten, wenn bspw. vorher auch eine weitere Lizenzbestätigung vom Endbenutzer (Fahrer) erfolgen muss, bevor überhaupt die eigentliche Updateinstallation anfangen kann, oder weil das Fahrzeug10 bspw. in einen bestimmten Zustand51 gebracht werden muss und eine Bestätigungseinholung des Benutzers notwendig ist. Diese Informationen sind als Ablauflogik Bestandteil des über das Verbindungsmodul31 heruntergeladenen Fahrzeug-Updatedatenpakets. Darin kann außerdem enthalten sein, wie lange bspw. das Gesamtupdate andauert, welche Installationsausführungen (Softwareupdate-Clients12,13) betroffen sind, welche Steuergeräte oder Fahrzeugdomänen – etwa Infotainment oder Karosseriesteuerung (body control) – betroffen sind und in welchem Zustand51 sich das Fahrzeug10 befinden muss, d. h. einige der von der anstehenden Updateinstallation betroffenen Steuergeräte und Softwareupdate-Clients12,13 dürfen nur ausgeführt werden, wenn bspw. der Batteriestand des Fahrzeuges10 einen bestimmten Ladezustand (level) hat, da die Updatezeit an einem Steuergerät dies erfordern würde.Thecoordination layer 33 interprets data parts - the so-called update process logic (flow) and associated conditions for the specific update installations - from the downloadedvehicle 10 Update package, which specify how much user interaction continues 34 and whether an approval needs to be obtained, for example the update to one of theco-ordination layer 33 proposed date and in addition based on the subsequent FOTA flow logic data, if, for example, before a further license confirmation from the end user (driver) must be made before the actual update installation can begin at all, or because thevehicle 10 for example, in a certain state 51 must be brought and a confirmation request of the user is necessary. This information is part of the flow logic via theconnection module 31 downloaded vehicle update data package. It can also contain how long, for example, the overall update lasts, which installation executions (software update clients 12 . 13 ) are affected, which control devices or vehicle domains - such as infotainment or body control - are affected and in what condition 51 thevehicle 10 that is, some of the controllers and software update clients affected by theupcoming update installation 12 . 13 may only be carried out if, for example, the battery level of thevehicle 10 has a certain state of charge (level), since the update time at a control unit would require this.

Die Koordinierungsschicht33 überprüft die in der Update-Ablauflogik enthaltenen Sollwerte und vergleicht diese mit Istwerten des Fahrzeuges10, indem es die notwendigen Fahrzeug-Interfaces verwendet und so bspw. den Batteriezustand des Fahrzeuges10 und ggf. den momentanen Grad der Batterieentladung erhält und im Soll-Istwert-Vergleich entscheidet, ob eine Installation36 überhaupt gestartet werden kann. Falls eine Installation36 bereits gestartet wurde und der Fahrzeugupdate-Client14 parallel auf Grund des einzuhaltenden Sollwertes fortlaufend und parallel zur Ausführung der einzelnen Installation36 bspw. plötzlich feststellt, dass ein Istwert wie bspw. der Batteriestand im Vergleich mit dem definierten Sollwert zu einem definierten Zeitpunkt unterschritten ist, dann wird diejenige Updateinstallation bspw. pausiert, unterbrochen oder neu ausgeführt – abhängig davon, was letztendlich in der Update-Ablauflogik definiert ist und wie mit einem solchen Fall umzugehen ist, wenn die Batterie einen Soll-Schwellwert unterscheitet. Falls eine solche Unterschreitung des Soll-Schwellenwerts des Batteriestands Auswirkungen auf den Fahrzeugzustand50 und ggf. auf die Fahrzeug-Fahrfunktionalität hat und die vollständige Ausführung als Bestandteil der Updateinstallation in der Update-Ablauflogik definiert ist, kann die Updateinstallation vollständig beendet oder eine sofortige Unterbrechung initiiert werden und bspw. ein Rollback36 zur Ausführung an den Softwareupdate-Client12,13 delegiert werden – je nachdem, wie schnell bspw. der Rollback36 durchgeführt werden kann und ob dies in der Update-Ablauflogik definiert ist und welche zusätzlichen Bedingungen vorhanden sein müssen. Im Falle eines Pausierens – je nachdem, was in der Update-Ablauflogik für einen solchen Sonderfall als weitere Aktion definiert wurde – steuert der Fahrzeugupdate-Client14 den korrespondierenden Softwareupdate-Client12,13 mit Unterbrechungsbefehlen an. Der Fahrzeugupdate-Client14 würde entsprechend seiner spezifischen Funktionalität seine aktuellen laufenden Aktionen ggf. zu Ende ausführen und die ECU in einem vom Fahrzeugupdate-Client14 definierten (wenn auch nicht voll funktionsfähigen) Zustand51 hinterlassen oder ggf. alle laufenden Aktionen unterbrechen und mit Statuszuständen an den Fahrzeugupdate-Client14 berichten, sodass der Fahrzeugupdate-Client14 über den Zustand51 der Softwareupdate-Clients12,13 und des Steuergeräts in Kenntnis ist und nach seinen Update-Ablauflogik-Regeln (den Fahrzeugzustand50 berücksichtigend) weiter verfahren kann. Pausieren eines Softwareupdate-Clients12,13 bedeutet, diesen in einen definierten Zustand51 versetzen zu lassen, indem der Softwareupdate-Client12,13 einen definierten Zustand51 bezüglich eines Installationsschrittes hinterlässt und bspw. alle notwendigen Informationen zur Sitzung (session) speichert, damit er in der Lage ist, nach Ende einer Pause weiterzumachen, wo er aufgehört hat, bspw. wenn wieder ein gültiger Batterielevel vorhanden ist, ohne somit von Neuem mit der initial vom Fahrzeugupdate-Client14 delegierten Ausführung zu starten. Eine Unterbrechung eines Softwareupdate-Clients12,13 bedeutet, eine einst delegierte Ausführungsaktion vollständig zu unterbrechen und von neuem ggf. mit neuen Inputwerten zu beginnen.Thecoordination layer 33 Checks the setpoints contained in the update logic and compares them with actual values of thevehicle 10 by using the necessary vehicle interfaces and so, for example, the battery condition of thevehicle 10 and possibly the current degree of battery discharge receives and decides in the setpoint-actual value comparison, whether aninstallation 36 can be started at all. If aninstallation 36 already started and thevehicle update client 14 parallel due to the setpoint to be maintained continuously and in parallel to the execution of eachinstallation 36 For example, suddenly finds that an actual value such as the battery level is below a defined time in comparison with the defined setpoint, then that update installation, for example, paused, interrupted or re-executed - depending on what ultimately defined in the update flow logic and how to deal with such a case when the battery underrates a target threshold. If such a fall below the target threshold of the battery level affects thevehicle condition 50 and possibly has the vehicle driving functionality and the full execution is defined as part of the update installation in the update flow logic, the update installation can be completely stopped or an immediate interruption initiated and, for example, arollback 36 for execution to thesoftware update client 12 . 13 be delegated - depending on how fast, for example, therollback 36 and whether this is defined in the update flow logic and what additional conditions must be present. In the case of a pause - depending on what has been defined in the update flow logic for such a special case as a further action - controls thevehicle update client 14 the correspondingsoftware update client 12 . 13 with interrupt commands. Thevehicle update client 14 According to its specific functionality, it would eventually complete its current running actions and the ECU in avehicle update client 14 defined (although not fully functional) state 51 leave behind or if necessary interrupt all ongoing actions and with status conditions to thevehicle update client 14 Report thevehicle update client 14 about the condition 51 thesoftware update clients 12 . 13 and the controller and according to its update flow logic rules (vehicle state 50 taking into account). Pause asoftware update client 12 . 13 means this in a defined state 51 have thesoftware update client 12 . 13 a defined state 51 with respect to an installation step and stores, for example, all the necessary information on the session so that he is able to continue after a break, where he left off, for example, when a valid battery level is present, without again with the initial from thevehicle update client 14 to start delegated execution. An interruption to asoftware update client 12 . 13 means completely interrupting a once-delegated execution action and starting again with new input values.

Die Koordinierungsschicht33 überprüft zu Beginn, welche der betroffenen Softwareupdate-Clients12,13 für spezifische und vereinzelnde Updateinstallation überhaupt auf ein bestimmtes Zielsteuergerät oder auf eine Zieldomäne spezialisiert sind und welche dieser Softwareupdate-Clients12,13 den Fahrzeugzustand50 und Fahrzeugfahrfunktionalität betreffen und welche einzelnen und spezifischen Updateinstallationen abhängig von anderen Updateinstallationen in der Reihenfolgeausführung sind, um so die unabhängigen und den Fahrzeugzustand50 nicht betreffenden einzelnen Updateinstallationen (parallel zur weiteren Abarbeitung und Bestimmung der Updateinstallationsstarts der anderen Updateinstallationen) bereits auszuführen, nachdem bspw. eine Startbestätigung des Endbenutzers eingeholt wurde. Die verbleibenden und bspw. den Fahrzeugzustand50 betreffenden einzelnen Updateinstallationen können ggf. mehr Zeit in Anspruch nehmen, bis der optimale Zeitpunkt für die eigentliche Updateinstallation eintreten kann, da bspw. umfangreichere Zustände51 im Fahrzeug10 verlangt werden und mehrere Soll-Istwert-Vergleiche und Zustände51 im Fahrzeug10 erfüllt sein müssen (weil es sich bspw. um ein Motorsteuergerät handelt), bspw. wenn ein bestimmter Batteriezustand vorhanden sein muss oder das betreffende Steuergerät nur im stillgelegten Fahrzeugzustand50 aktualisiert werden darf und somit bspw. eine bestimmte verlangte Datenrate über den betreffenden Bus-Kommunikationskanal zur Verfügung steht, damit auch die in der Update-Ablauflogik geplante Updateinstallationszeit eingehalten werden kann. Die Bestimmung des optimalen Zeitpunktes einer Updateinstallation bei Auswirkung auf Fahrzeugfahrfunktionalität kann bspw. auch dadurch verzögert werden, dass der Endbenutzer auf den Ausfall der Fahrzeugfunktionalität für eine bestimmte Zeit informiert werden und er zustimmen muss und selbst dann noch die Situation eintreten muss, dass das Fahrzeug10 tatsächlich stillsteht und erst dann die Updateinstallation an einem Steuergerät mit Auswirkung auf Fahrzeugfahrfunktionalität vom korrespondierenden Softwareupdate-Client12,13 initiiert durch den Fahrzeugupdate-Client14 durchgeführt werden kann. Ein möglicher Sonderfall ist der folgende: Ein Fahrer fährt eine lange Strecke und parkt auf der Autobahn. Der Fahrzeugupdate-Client14 stellt fest, dass alle Bedingungen erfüllt sind und das Fahrzeug10 bspw. auch stillsteht und führt die Updateinstallation am Motorsteuergerät aus. Ein Endbenutzer steigt ins Fahrzeug10 ein und möchte losfahren, muss aber bspw. mehrere Minuten abwarten, da der vom Fahrzeugupdate-Client14 künstlich herbeigeführte Fahrzeugzustand50 (Fahrzeug10 darf während der Updateinstallation nicht starten bzw. fahrbereit sein) eine Weiterfahrt nicht erlaubt. Ein erweiterter Sonderfall wäre wie soeben beschrieben mit dem Unterschied, dass die Updateinstallation fehlschlägt und bspw. das Motorsteuergerät auch nach einem Rollback36 nicht mehr funktioniert und das Fahrzeug10 den Unfall behandelt und der Fahrer auf seiner langen Reise nicht mehr weiterfahren kann. Hieraus wird ersichtlich, dass eine Bestätigung des Endbenutzers und Bestimmung des optimalen Zeitpunktes sehr wichtig sind.Thecoordination layer 33 first checks which of the affectedsoftware update clients 12 . 13 For specific and occasional update installation, we are specialized in particular on a specific target controller or on a target domain and which of thesesoftware update clients 12 . 13 thevehicle condition 50 and vehicle driving functionality and which individual and specific update installations are subject to other update installations in the order execution, so the independent and thevehicle condition 50 not concerned individual update installations (parallel to further processing and determining the update installation launches of the other update installations) already execute after, for example, a start confirmation of the end user has been obtained. The remaining and, for example, thevehicle condition 50 individual update installations concerned may possibly take more time to reach the optimal time for the actual update installation, because, for example, more extensive states 51 in thevehicle 10 be requested and multiple setpoint-actual comparisons and states 51 in thevehicle 10 must be met (because it is, for example, an engine control unit), for example, if a certain battery condition must be present or the relevant control unit only in thedisused vehicle condition 50 may be updated and thus, for example, a certain requested data rate over the relevant bus communication channel is available, so that the planned in the update flow logic update installation time can be met. The determination of the optimum time of an update installation in the event of an effect on vehicle driving functionality can also be delayed, for example, by informing the end user of the failure of the vehicle functionality for a certain time and agreeing, and even then the situation must occur that thevehicle 10 actually stops and only then the update installation on a control unit with effect on vehicle driving functionality from the correspondingsoftware update client 12 . 13 initiated by thevehicle update client 14 can be carried out. A possible special case is the following: A driver drives a long distance and parks on the highway. Thevehicle update client 14 notes that all conditions are met and thevehicle 10 for example, also stands still and executes the update installation on the engine control unit. An end user gets into thevehicle 10 and wants to start, but has to wait, for example, several minutes because of thevehicle update client 14 artificially induced vehicle condition 50 (Vehicle 10 may not start or be ready for driving during the update installation) a further journey is not permitted. An extended special case would be as just described with the difference that the update installation fails and, for example, the engine control unit even after arollback 36 no longer works and thevehicle 10 treated the accident and the driver can not continue on his long journey. From this it can be seen that an end user's confirmation and the determination of the optimal time are very important.

Der Fahrzeugupdate-Client14 delegiert also insgesamt Ausführungsaktionen wie bspw. Speicherplatzreservierungen, Downloadvorgänge oder Updateinstallationsschritte an Softwareupdate-Clients12,13, die zuständig sind für Updateinstallationen in betroffenen Domänen oder an betroffenen Steuergeräten und stellt selbst die notwendigen Fahrzeugzustände50 und ECU-Zustände51 sicher, indem es beispielsweise nicht nur Ausführungsaktionen delegiert, sondern auch die Erreichbarkeit von bspw. Softwareupdate-Clients12,13 und ECUs vorher überprüfen lässt, den Batteriezustand und den Fahrzeugmodus (steht es still oder fährt es) überprüft, die Benutzerinteraktion34 und Benutzerrückmeldung miteinbezieht und die einzelnen Rückgabewerte mit in seine Soll-Istwert-Vergleiche einschließt. Diese Orchestrierungsarbeit kann von der Koordinierungsschicht33 bzw. von dem Fahrzeugupdate-Client14 selbst dann durchgeführt werden, während einzelne bereits delegierte Ausführungen fortlaufen, und parallel Soll-Istwert-Vergleiche durchgeführt werden, indem es von den Funktionskomponenten Status-, Fortschritts- und Erreichbarkeitsinformationen verlangt und diese auch bereitstellt (3,4).Thevehicle update client 14 So delegates overall execution actions such as disk space reservations, download operations or update installation steps tosoftware update clients 12 . 13 who are responsible for update installations in affected domains or affected ECUs and provides even thenecessary vehicle conditions 50 and ECU states 51 For example, by not only delegating execution actions, but also the accessibility of, for example,software update clients 12 . 13 and having ECUs check the battery condition and vehicle mode (stand still or drive it) before checking theuser interaction 34 and includes user feedback and includes the individual return values in its setpoint-actual value comparisons. This orchestration work can be done from thecoordination layer 33 or from thevehicle update client 14 are performed even while individual already delegated executions continue, and parallel setpoint-actual comparisons are made by requesting and providing status, progress and presence information from the function components ( 3 . 4 ).

Durch seine transparente Verantwortung, Reporting-Informationen zu jedem relevanten Schritt an seine Beobachter (observer) (Verbindungsmodul31, Benutzerinteraktion34) bereitzustellen, ist sichergestellt, dass selbst bei Ausfall der Koordinierungsschicht33 die entkoppelten und autonomen Funktionskomponenten den letzten bekannten Zustand51 und bspw. einen Ausfall weitergeben können – bspw. an das Backend20 oder direkt über Benutzerinteraktion34 an den Benutzer.Through its transparent responsibility, reporting information about every relevant step to its observer (observer) (connection module 31 , User interaction 34 ), it ensures that even if the coordination layer fails 33 the decoupled and autonomous functional components the last known state 51 and, for example, can pass on a failure - for example, to thebackend 20 or directly throughuser interaction 34 to the user.

Die Update-Ablauflogik-Definition ist entweder datenorientiert und es existiert eine Implementierungsgegenstelle im Fahrzeug10 (hier: Koordinierungsschicht33 bzw. Fahrzeugupdate-Client14), die die Daten interpretieren und bspw. alle vorkommenden Attribute, Parameter und Werte verstehen und umsetzen kann, oder die Updatedaten-Ablauflogik-Definition enthält für das Fahrzeug10 und dessen spezifisches durchgehendes (end-to-end, E/E) Fahrzeugmodell und E/E-Fahrzeugtopologie spezifisch parallel ausführbare Regeln oder Update-Ablauflogik im Sinne eines Skriptes, welches mittels eines Interpreters ebenfalls von der Koordinierungsschicht33 ausgeführt wird.The update flow logic definition is either data-oriented and there is an implementation counterpart in the vehicle 10 (here:coordination layer 33 or vehicle update client 14 ) that can interpret the data and, for example, understand and implement all the occurring attributes, parameters and values, or contains the update data flow logic definition for thevehicle 10 and its specific end-to-end (E / E) vehicle model and E / E vehicle topology specific parallel executable rules or update flow logic in the sense of a script which also uses an interpreter from thecoordination layer 33 is performed.

Hat der Fahrzeugupdate-Client14 durch Soll-Istwert-Vergleiche innerhalb des Fahrzeuges10 nach dem Update – bspw. Überprüfung der aktuellen SW- und insbesondere FW-Versionen anhand von Ziel-SW- und insbesondere FW-Versionen – festgestellt, dass das Fahrzeugupdate erfolgreich verlaufen ist, ist es – je nachdem, wie es in der Update-Ablauflogik definiert wurde, wann der Schritt unter welchen Bedingungen nach einem erfolgreichen Update auszuführen ist, bspw. wenn der Soll-Istwert-Vergleich von SW- und insbesondere FW-Versionen erfolgreich war – in der Lage, den reservierten Speicherplatz wieder freizugeben und die alten Updatedaten zu löschen, indem es mit dem Datenhaltungsmodul32 interagiert.Has thevehicle update client 14 by reference-actual value comparisons within thevehicle 10 After the update - for example, checking the current SW and in particular FW versions based on target SW and in particular FW versions - it is determined that the vehicle update was successful, it is - depending on how it in the update flow logic when the step has to be executed under which conditions after a successful update, for example, if the target-actual value comparison of SW and in particular FW versions was successful - able to release the reserved memory space and the old update data delete it by using thedata retention module 32 interacts.

Der robuste Umgang mit Sonderfällen beinhaltet bspw. auch Folgendes:
Ein Updateverfügbarkeitsabbruchtrigger durch das Backend20, während ein Update bereits im Fahrzeug10 ausgeführt wird erlaubt, dass der Fahrzeugupdate-Client14 laufende oder bereits durchgeführte Updates unterbrechen und rückgängig machen kann, indem er Rollbackaktionen von den Softwareupdate-Clients12,13 durchführen lässt.
The robust handling of special cases also includes, for example:
An update availability abort trigger by thebackend 20 while an update is already in thevehicle 10 Running allows thevehicle update client 14 You can pause or undelete ongoing or previously-performed updates by rolling back actions from thesoftware update clients 12 . 13 can be performed.

Bspw. wenn Speicherplatzverfügbarkeit (aus unterschiedlichsten Gründen) nicht mehr gegeben ist, erhält der Fahrzeugupdate-Client14 entsprechende Statusinformationen und kann basierend seiner Update-Ablauflogik das Update am Fahrzeug10 steuern.For example. if space availability (for a variety of reasons) is no longer given, receives thevehicle update client 14 corresponding status information and can based on its update flow logic the update on thevehicle 10 Taxes.

Wenn bspw. der Zustand51 der betreffenden Softwareupdate-Clients12,13 oder ECUs nicht mehr verfügbar ist oder der Zustand51 der betroffenen ECUs und Softwareupdate-Clients12,13 durch den Fahrzeugupdate-Client14 nicht mehr angefragt werden kann, stellt der Fahrzeugupdate-Client14 einen bestimmten Fahrzeugzustand50 sicher und berichtet an seine Beobachter.If, for example, the state 51 the software update clients concerned 12 . 13 or ECUs is no longer available or the state 51 affected ECUs andsoftware update clients 12 . 13 through thevehicle update client 14 can no longer be requested, represents the vehicle update client 14 aspecific vehicle condition 50 sure and report to his observers.

Optionen, die als zusätzliche Elemente zur Robustheit beitragen, umfassen eine duale Architektur, in welcher die FOTA-Komponenten und Funktionen verteilt sind.Options that add robustness as additional elements include a dual architecture in which the FOTA components and functions are distributed.

5 vermittelt einen Überblick über die erfindungsgemäßen Aktionen6165, die, falls erforderlich, solange wiederholt werden, bis das Verfahren60 vollständig abgeschlossen wurde. Das Verfahren60 wird hierbei durch den Fahrzeugupdate-Client14 ausgeführt, welcher der Architektur nach1 folgt. Das Verfahren60 dient somit der Überwachung des Zusammenwirkens des Fahrzeugupdate-Clients14 mit mehreren Softwareupdate-Clients12,13, die die Verbindung zu einem korrespondierenden Steuergerät auf einem oder mehreren CAN-Bussen herstellen. Das Verfahren kann somit auf einen Satz oder Cluster von Steuergeräten angewandt werden, wobei ein solcher Cluster durchaus lediglich ein einzelnes Steuergerät umfassen mag, ohne den Rahmen der Erfindung zu verlassen. 5 provides an overview of the actions according to the invention 61 - 65 which, if necessary, be repeated until theprocedure 60 was completed completely. Theprocedure 60 This is done by thevehicle update client 14 which is the architecture according to 1 follows. Theprocedure 60 thus serves to monitor the interaction of thevehicle update client 14 with severalsoftware update clients 12 . 13 that connect to a corresponding controller on one or more CAN buses. The method can thus be applied to a set or cluster of controllers, such cluster may well comprise only a single controller, without departing from the scope of the invention.

Eine mit der Überwachung betraute Komponente wird vor dem Beginn der Aktualisierung64 beauftragt, das Fahrzeug10 in einen sicheren Zustand zu versetzen (61). Hierbei werden dem Aktualisierungspaket (VUPA) Informationen entnommen, die die Absicherungsmöglichkeiten des Fahrzeuges10 beschreiben. Diese werden mittels CAN-Signalen an die entsprechenden Steuergeräte aktiviert. Beispiele hierfür sind die Aktivierung einer elektronischen Handbremse sowie die Verriegelung eines Automatikgetriebes in der Parkposition.A component entrusted with the monitoring is before the start of theupdate 64 instructed thevehicle 10 into a safe state ( 61 ). In this case, the update package (VUPA) information is taken that the hedge options of thevehicle 10 describe. These are activated by means of CAN signals to the corresponding control units. Examples include the activation of an electronic handbrake and the locking of an automatic transmission in the parking position.

Anschließend wird dieser „sichere“ Fahrzeugzustand verriegelt (62), d. h. der Fahrzeugupdate-Client14 entnimmt dem Aktualisierungspaket weitere Steuersequenzen, welche bewirken, dass die Steuergeräte den in Schritt61 eingenommenen sicheren Zustand nicht mehr verlassen und Signale von außen, etwa zum Lösen der elektronischen Handbremse, ignorieren.Then this "safe" vehicle state is locked ( 62 ), ie thevehicle update client 14 takes from the update package further control sequences, which cause the ECUs instep 61 Do not leave the safe state and ignore signals from outside, for example to release the electronic handbrake.

Ist diese Absicherung61,62 des Fahrzeuges10 durchgeführt, beauftragt der Fahrzeugupdate-Client14 die erfindungsgemäße Komponente, die permanente Überwachung des Fahrzeuges10 einzuleiten. Eine hierzu geeignete Abfrage63 umfasst die Auswertung der Batteriespannung oder mit Hilfe der Fahrzeugsteuergeräte den gerade vorliegenden energetischen detaillierteren Zustand des Fahrzeuges10. Hierzu können Lade- und Verbrauchsvorgänge aus der Vergangenheit, das Alter der Batterie usw. mit einbezogen werden, um möglichst genau den Ladezustand ermitteln zu können. Die besagte Komponente erhält Informationen über den Aktualisierungsvorgang, sodass den Steuergeräten des Fahrzeuges10 ebenfalls mitgeteilt werden kann, wann sie für die Aktualisierung64 benötigt werden. Andernfalls erhalten sie den Befehl, einen Ruhezustand einzunehmen, der die Energieaufnahme des Fahrzeuges10 während der Aktualisierung64 minimiert. Die für die Aktualisierung64 vorgesehenen Steuergeräte werden reaktiviert, sobald sie selbst aktualisiert (64) werden sollen.Is thishedging 61 . 62 of thevehicle 10 performed, the vehicle update client instructed 14 the component of the invention, the permanent monitoring of thevehicle 10 initiate. Asuitable query 63 includes the evaluation of the battery voltage or with the help of the vehicle control units the currently present energetic detailed state of thevehicle 10 , For this purpose, charging and consumption processes from the past, the age of the battery, etc. can be included in order to determine as accurately as possible the state of charge. The said component receives information about the update process, so that the control units of thevehicle 10 can also be notified when they are for theupdate 64 needed. Otherwise, they receive the command to enter a state of rest, the energy consumption of thevehicle 10 during theupdate 64 minimized. The for theupdate 64 provided controllers are reactivated as soon as they are updated ( 64 ) should be.

Ist der energetische Zustand des Fahrzeuges10 unzureichend, um weitere Aktualisierungsvorgänge64 zuzulassen, so gibt die Komponente dem Fahrzeugupdate-Client14 das Signal, den laufenden Aktualisierungsvorgang64 abzuschließen und dann den Status der Aktualisierung64 sicher abzulegen. Bei weiteren Startvorgängen wird die erfindungsgemäße Komponente dann wiederum dem Fahrzeugupdate-Client14 signalisieren, dass ein Fahrzeugzustand vorliegt, der weitere Aktualisierungen64 von Steuergeräten zulässt. In diesem Fall fährt der Fahrzeugupdate-Client14 an der Stelle mit der Aktualisierung64 der Steuergeräte fort, an der sie vorher unterbrochen wurde.Is the energetic condition of thevehicle 10 inadequate forfurther updates 64 to allow, the component gives thevehicle update client 14 the signal, thecurrent update process 64 complete and then the status of theupdate 64 to safely drop. For further boot processes, the component according to the invention is then again thevehicle update client 14 signal that there is a vehicle condition that has further updates 64 of control devices. In this case, the vehicle update client is running 14 in the place with theupdate 64 the control unit on which it was previously interrupted.

Hierbei wird vorher überprüft (63), ob ein hinreichend langer Ladevorgang stattgefunden hat, sodass der energetische Zustand des Fahrzeuges10 ausreichend für den nächsten Aktualisierungsvorgang64 ist. Dieser betrifft wiederum einen zusammenhängenden Satz von zu aktualisierenden (64) Steuergeräten.This is checked in advance ( 63 ), whether a sufficiently long charging process has taken place, so that the energetic condition of thevehicle 10 sufficient for thenext update process 64 is. This in turn concerns a coherent set of updates ( 64 ) Control devices.

Da ein Aktualisierungsvorgang64 mehrere Stunden benötigen kann, sind diejenigen Fahrzeugsignale zu überwachen, die den Startvorgang des Motors einleiten bzw. begleiten. Ein Startvorgang darf den Aktualisierungsvorgang64 in einem sicheren Zustand unterbrechen; die Mobilität des Fahrzeuges10 hat hier höhere Priorität. Ist ein Abbruch des Verfahrens60 nicht sofort möglich, da vitale Steuergeräte des Fahrzeuges10 sich noch in der Aktualisierungsphase64 befinden, so kann ein Countdown dem Endbenutzer anzeigen, dass sein Wunsch, den Motor zu starten, akzeptiert wurde und dass noch etwas Zeit benötigt wird, um das Fahrzeug10 in einen fahrbereiten Zustand zu versetzen.As anupdate process 64 can take several hours to monitor those vehicle signals that initiate or accompany the starting process of the engine. A boot process is allowed to upgrade 64 in a safe Interrupt state; the mobility of thevehicle 10 has higher priority here. Is an abort of theprocedure 60 not immediately possible, because vital ECUs of thevehicle 10 still in theupdate phase 64 If so, a countdown may indicate to the end user that their desire to start the engine has been accepted and that there is still some time left to thevehicle 10 into a ready-to-drive state.

ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturCited patent literature

  • DE 10105454 A1[0004]DE 10105454 A1[0004]

Claims (10)

Translated fromGerman
Verfahren (60) zum Überwachen einer Aktualisierung eines Fahrzeuges (10), gekennzeichnet durch folgende Merkmale: – das Fahrzeug (10) wird in einen sicheren Zustand überführt (61), – der sichere Zustand wird verriegelt (62), – ein energetischer Zustand des Fahrzeuges (10) wird abgefragt (63),– abhängig vom energetischen Zustand wird entweder ein Steuergerät des Fahrzeuges (10) aktualisiert (64) oder das Verfahren (60) vorzeitig kontrolliert abgebrochen und – der sichere Fahrzeugzustand wird entriegelt (65).Procedure ( 60 ) for monitoring an update of a vehicle ( 10 ), characterized by the following features: - the vehicle ( 10 ) is transferred to a safe state ( 61 ), - the safe state is locked ( 62 ), - an energetic condition of the vehicle ( 10 ) is queried ( 63 ), - depending on the energetic state is either a control unit of the vehicle ( 10 ) ( 64 ) or the method ( 60 ) prematurely aborted and - the safe vehicle state is unlocked ( 65 ).Verfahren (60) nach Anspruch 1, gekennzeichnet durch folgende Merkmale: – vor dem Überführen (61) in den sicheren Zustand wird ein Aktualisierungspaket vorzugsweise drahtlos auf das Fahrzeug (10) übertragen und– das Überführen (61) in den sicheren Zustand und das Aktualisieren (64) der Steuergeräte erfolgen jeweils anhand des Aktualisierungspaketes.Procedure ( 60 ) according to claim 1, characterized by the following features: - before transferring ( 61 ) in the safe state, an update package is preferably wirelessly to the vehicle ( 10 ) and - transferring ( 61 ) in the safe state and updating ( 64 ) of the control units are in each case based on the update package.Verfahren (60) nach Anspruch 1 oder 2, gekennzeichnet durch mindestens eines der folgenden Merkmale:– das Überführen (61) in den sicheren Zustand umfasst ein Aktivieren einer elektronischen Feststellbremse des Fahrzeuges (10) oder – das Überführen (61) in den sicheren Zustand umfasst ein Verriegeln eines Automatikgetriebes des Fahrzeuges (10) in einer Parkposition.Procedure ( 60 ) according to claim 1 or 2, characterized by at least one of the following features: - the transfer ( 61 ) in the safe state comprises activating an electronic parking brake of the vehicle ( 10 ) or - the transfer ( 61 ) in the safe state includes locking an automatic transmission of the vehicle ( 10 ) in a parking position.Verfahren (60) nach einem der Ansprüche 1 bis 3, gekennzeichnet durch folgendes Merkmal: – das Abfragen (63) des energetischen Zustandes umfasst eine Auswertung einer Spannung einer Batterie des Fahrzeuges (10).Procedure ( 60 ) according to one of claims 1 to 3, characterized by the following feature: - polling ( 63 ) of the energetic state comprises an evaluation of a voltage of a battery of the vehicle ( 10 ).Verfahren (60) nach einem der Ansprüche 1 bis 3, gekennzeichnet durch folgendes Merkmal: – das Abfragen (63) des energetischen Zustandes umfasst ein Ermitteln einer aktuellen Ladekapazität einer Batterie des Fahrzeuges (10).Procedure ( 60 ) according to one of claims 1 to 3, characterized by the following feature: - polling ( 63 ) of the energetic state includes determining a current charge capacity of a battery of the vehicle ( 10 ).Verfahren (60) nach Anspruch 5, gekennzeichnet durch mindestens eines der folgenden Merkmale: – zum Ermitteln der Ladekapazität werden vergangene Lade- und Verbrauchsvorgänge der Batterie miteinbezogen oder – zum Ermitteln der Ladekapazität wird ein Alter der Batterie miteinbezogen.Procedure ( 60 ) according to claim 5, characterized by at least one of the following features: - to determine the charge capacity past charging and consumption processes of the battery are included or - to determine the charge capacity of an age of the battery is included.Verfahren (60) nach einem der Ansprüche 1 bis 6, gekennzeichnet durch folgendes Merkmal: – das Überführen (61), das Verriegeln (62), das Abfragen (63), das Aktualisieren (64) und das Entriegeln (65) werden wiederholt, bis sämtliche Steuergeräte aktualisiert sind.Procedure ( 60 ) according to one of claims 1 to 6, characterized by the following feature: - the transfer ( 61 ), the locking ( 62 ), querying ( 63 ), updating ( 64 ) and unlocking ( 65 ) are repeated until all controllers are updated.Computerprogramm (14), welches eingerichtet ist, das Verfahren (60) nach einem der Ansprüche 1 bis 7 auszuführen.Computer program ( 14 ), which is set up, the method ( 60 ) according to one of claims 1 to 7.Maschinenlesbares Speichermedium (17), auf dem das Computerprogramm (14) nach Anspruch 8 gespeichert ist.Machine-readable storage medium ( 17 ) on which the computer program ( 14 ) is stored according to claim 8.Vorrichtung (10), die eingerichtet ist, das Verfahren (60) nach einem der Ansprüche 1 bis 7 auszuführen.Contraption ( 10 ), which is set up, the procedure ( 60 ) according to one of claims 1 to 7.
DE102016201279.7A2016-01-282016-01-28 Method and device for monitoring an update of a vehiclePendingDE102016201279A1 (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
DE102016201279.7ADE102016201279A1 (en)2016-01-282016-01-28 Method and device for monitoring an update of a vehicle

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
DE102016201279.7ADE102016201279A1 (en)2016-01-282016-01-28 Method and device for monitoring an update of a vehicle

Publications (1)

Publication NumberPublication Date
DE102016201279A1true DE102016201279A1 (en)2017-08-03

Family

ID=59328157

Family Applications (1)

Application NumberTitlePriority DateFiling Date
DE102016201279.7APendingDE102016201279A1 (en)2016-01-282016-01-28 Method and device for monitoring an update of a vehicle

Country Status (1)

CountryLink
DE (1)DE102016201279A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
DE102018214999A1 (en)2017-10-132019-04-18Robert Bosch Gmbh Device for securing diagnostic commands to a control unit and corresponding motor vehicle
DE102018204188A1 (en)2018-03-202019-09-26Audi Ag A method for updating a software application in a device that is in operation, and device and motor vehicle
WO2021093984A1 (en)2019-11-152021-05-20Sew-Eurodrive Gmbh & Co. KgMethod for transferring data
DE102019131766A1 (en)*2019-11-252021-05-27Mtu Friedrichshafen Gmbh Method for safely modifying a configuration of a system control device by means of a modification device and a device for safely modifying a configuration of a system control device
US11356425B2 (en)2018-11-302022-06-07Paccar IncTechniques for improving security of encrypted vehicle software updates
US11449327B2 (en)2018-11-302022-09-20Paccar IncError-resilient over-the-air software updates for vehicles
US11726771B2 (en)2018-06-292023-08-15Mitsubishi Electric CorporationUpdate control device, update control system, and update control method

Citations (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
DE10105454A1 (en)2001-02-072002-08-29Bosch Gmbh Robert Procedure for the automatic addition of software

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
DE10105454A1 (en)2001-02-072002-08-29Bosch Gmbh Robert Procedure for the automatic addition of software

Cited By (14)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
DE102018214999A1 (en)2017-10-132019-04-18Robert Bosch Gmbh Device for securing diagnostic commands to a control unit and corresponding motor vehicle
WO2019072840A1 (en)2017-10-132019-04-18Robert Bosch Gmbh DEVICE FOR PROTECTING DIAGNOSTIC COMMUNICATIONS TO A CONTROL UNIT AND CORRESPONDING MOTOR VEHICLE
CN111183412A (en)*2017-10-132020-05-19罗伯特·博世有限公司Device for protecting diagnostic commands to a control unit and corresponding motor vehicle
CN111183412B (en)*2017-10-132024-03-01罗伯特·博世有限公司Device for protecting diagnostic instructions for a control device and corresponding motor vehicle
US11455393B2 (en)2017-10-132022-09-27Robert Bosch GmbhDevice for securing diagnostic commands to a control unit, and corresponding motor vehicle
DE102018204188A1 (en)2018-03-202019-09-26Audi Ag A method for updating a software application in a device that is in operation, and device and motor vehicle
WO2019179779A1 (en)2018-03-202019-09-26Audi AgMethod for carrying out an update to a software application in a device which is operating, and device and motor vehicle
US11726771B2 (en)2018-06-292023-08-15Mitsubishi Electric CorporationUpdate control device, update control system, and update control method
US11356425B2 (en)2018-11-302022-06-07Paccar IncTechniques for improving security of encrypted vehicle software updates
US11449327B2 (en)2018-11-302022-09-20Paccar IncError-resilient over-the-air software updates for vehicles
WO2021093984A1 (en)2019-11-152021-05-20Sew-Eurodrive Gmbh & Co. KgMethod for transferring data
DE102019131766B8 (en)2019-11-252021-10-14Mtu Friedrichshafen Gmbh Method for safely modifying a configuration of a system control device by means of a modification device and a device for safely modifying a configuration of a system control device
DE102019131766B4 (en)2019-11-252021-09-23Mtu Friedrichshafen Gmbh Method for safely modifying a configuration of a system control device by means of a modification device and a device for safely modifying a configuration of a system control device
DE102019131766A1 (en)*2019-11-252021-05-27Mtu Friedrichshafen Gmbh Method for safely modifying a configuration of a system control device by means of a modification device and a device for safely modifying a configuration of a system control device

Similar Documents

PublicationPublication DateTitle
DE102015221330A1 (en) A method and apparatus for robustly updating firmware of a vehicle over an air interface
DE102016201279A1 (en) Method and device for monitoring an update of a vehicle
EP1967435B1 (en)Method for adaptive configuration recognition
DE102019126804A1 (en) VEHICLE SOFTWARE EXAM
DE102017113435A1 (en) Vehicle gateway network protection
DE102015203766A1 (en) Subsystem for a vehicle and corresponding vehicle
DE102017100751A1 (en) METHOD AND DEVICE FOR VEHICLE SOFTWARE UPDATE INSTALLATION
DE102017120009A1 (en) AUTHORIZATIONS FOR PARTLY AUTONOMOUS VEHICLE OPERATION
DE102015114684B4 (en) Vehicle total reset
DE102018103209A1 (en) METHOD AND DEVICE FOR HANDLING THE MATCHING OF MULTICYCLIC VEHICLE SOFTWARE UPDATES
EP2425333A1 (en)Method for updating software components
DE102005000999A1 (en)Parts usage management method of vehicle-mounted system, by forbidding use of part of vehicle-mounted system being started, if acquired and stored identification codes of part are not in agreement
DE102010003684A1 (en) System for controlling behavior of vehicles own objects
DE102014101917A1 (en) CAN-based immobilizer
DE102020104551A1 (en) BACKUP AND RESTORE A VEHICLE CONTROL CONFIGURATION USING DATA SNAPSHOTS
EP3393859A1 (en)Method for modifying safety- and/or security-relevant control devices in a motor vehicle, and a corresponding apparatus
DE102011075776A1 (en) Method and system for updating a shared memory
DE102017100380A1 (en) Diagnostic test execution system and method
DE102014204762A1 (en) Telematic system, telematics unit and method for remote control or influencing of vehicle functions and for recording vehicle data
DE102012023648B4 (en) Method and system for updating a control unit of a motor vehicle
DE102017100749A1 (en) METHOD AND DEVICE FOR CYCLIC FILING REPLACEMENT OF THE DEACTIVATED VEHICLE
WO2023057126A1 (en)Processor system for a vehicle, and method for monitoring a process state after a remote software update
DE102018217311A1 (en) Electronic control unit
DE102018128183A1 (en) Control device for a vehicle component, kit comprising a control device and a tester device, vehicle, method for updating a control device and computer-readable storage medium
DE102018113694A1 (en) Method and system for a load profile deployment

Legal Events

DateCodeTitleDescription
R012Request for examination validly filed

[8]ページ先頭

©2009-2025 Movatter.jp