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
DE102016201279A1 DE102016201279.7A DE102016201279A DE102016201279A1 DE 102016201279 A1 DE102016201279 A1 DE 102016201279A1 DE 102016201279 A DE102016201279 A DE 102016201279A DE 102016201279 A1 DE102016201279 A1 DE 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 GmbH filed Critical Robert Bosch GmbH
Priority to DE102016201279.7A priority Critical patent/DE102016201279A1/en
Publication of DE102016201279A1 publication Critical patent/DE102016201279A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Abstract

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

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 in 1 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-Server 21 im Backend 20 als auch als Download-Clients 11 im Fahrzeug 10 implementiert wird. Das Device-Management ist in einer Komponente separiert, welche sowohl als Gerätemanagement-Server 26 im Backend 20 als auch als Gerätemanagement-Client 16 im Fahrzeug 10 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 a download server 21 in the backend 20 as well as download clients 11 in the vehicle 10 is implemented. The device management is separated in a component, which both as a device management server 26 in the backend 20 as well as device management client 16 in the vehicle 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-Server 22 und FCOS-Server 23 im Backend 20 als auch als Anwendungssoftware-Update-Client 12 und Firmware-Update-Client 13 im Fahrzeug 10 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 a SCOS server 22 and FCOS servers 23 in the backend 20 as well as an application software update client 12 and firmware update client 13 in the vehicle 10 is implemented. SCOMO / FUMO here refers to the functionality according to OMA-DM as an exemplary implementation.

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

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

Als Content-Management 18 ist das Daten-Management im Fahrzeug 10 separiert. Entsprechendes gilt für die für die ECU-Aktualisierung im Fahrzeug 10 separierte Firmware-Update-Komponente, welche in mehreren Varianten und Instanzen – etwa jener eines Anwendungssoftware-Update-Clients 12 oder eines Firmware-Update-Clients 13 – vorliegen kann und in der Lage ist, die unterschiedlichen Systeme und Technologien zu aktualisieren.As content management 18 is the data management in the vehicle 10 separated. The same applies to the ECU update in the vehicle 10 Separated firmware update component, which in several variants and instances - such as that of an application software 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 Fahrzeugmanagement 25 ist für die Kenntnis der Fahrzeuge 10 – im Sinne eines Satzes oder einer Gruppe von Fahrzeugen 10 –, des Fahrzeuges 10 selbst und seiner Fahrzeugtopologie für alle Zwecke verantwortlich und in der Lage, ein Gerät auf das vom Gerätemanagement 15, 16, 26 gelieferte Fahrzeug 10 abzubilden. Das Gerätemanagement 15, 16, 26 identifiziert und kommuniziert hierzu mit einem Gerät, nicht notwendigerweise einem Fahrzeug 10 oder einem bekannten Fahrzeug 10. Mehrere Geräte können dabei zu einem Fahrzeug 10 zusammengefasst sein. Gleichwohl kann das Gerätemanagement 15, 16, 26 einen anderen Gerätetyp, beispielsweise einen Rasenmäher, identifizieren. Das Gerätemanagement 15, 16, 26 identifiziert somit den Gerätetyp, um die Weiterleitung an dessen Verwaltungsfunktion zu erlauben. Im vorliegenden Beispiel handelt es sich dabei um das Fahrzeugmanagement 25.The vehicle management 25 is for the knowledge of the vehicles 10 - in the sense of a sentence or a group of vehicles 10 -, of the vehicle 10 himself and his vehicle topology responsible for all purposes and capable of getting a device to that of device management 15 . 16 . 26 delivered vehicle 10 map. The device management 15 . 16 . 26 identifies and communicates with a device, not necessarily a vehicle 10 or a known vehicle 10 , Several devices can become a vehicle 10 be summarized. Nevertheless, the device management 15 . 16 . 26 identify another type of device, such as a lawnmower. The device management 15 . 16 . 26 thus identifies the device type to allow forwarding to its management function. In the present example, this is the vehicle management 25 ,

Der Gerätemanagement-Server 26 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.The device 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ätemanagement 15, 16, 26 ist in der Lage, mehrere Geräte unterschiedlichen Typs zu handhaben. Bekannte Geräte werden mithilfe des Datenmanagements 27 identifiziert und typisiert, um ein „bekanntes Gerät“ zu werden. Ein bekanntes Gerät wird der zugehörigen Verwaltungsfunktion – vorliegend dem Fahrzeugmanagement 25 – zugeleitet. Für die Zwecke der folgenden Ausführungen sei angenommen, dass alle Geräte als „Straßenfahrzeuge“ typisiert und durch das Fahrzeugmanagement 25 verarbeitet werden. Nichtsdestotrotz ist das Gerätemanagement vorzugsweise in der Lage, auch andere Typen und Anwendungsfälle zu unterstützen.The device management 15 . 16 . 26 is able to handle multiple devices of different types. Known devices are using data 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 by vehicle management 25 are processed. Nonetheless, device management is preferably able to support other types and applications as well.

Der Gerätemanagement-Client 16 ermöglicht es, Softwarekomponentenmanagement in der zugehörigen Laufzeitumgebung von einem Gerätemanagement-Server 26 aus einzuleiten. Der Gerätemanagement-Treiber unterstützt Geräteerkennung und Parameterkonfiguration durch den Gerätemanagement-Client 16. Der Gerätemanagement-Client 16 wiederum interagiert mit einem oder mehreren Gerätemanagement-Agenten 15 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-Client 16 setzt den allgemeinen Warnmechanismus ein, um die den Status der Verwaltungsaktivität umfassende endgültige Benachrichtigung mitzuteilen.The device management client 16 Allows software component management in the associated runtime environment from a device management server 26 to initiate. The device management driver supports device discovery and parameter configuration by the device management client 16 , The device management client 16 in turn, interacts with one or more device 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. The device 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-Clients 16 existieren, dann wird diese Aktivität als bestmögliche Alternative durch eine einzige Instanz des Gerätemanagement-Clients 16 und zusätzlichen Gerätemanagement-Agents 15 ausgeführt. Um bei einem einzigen Gerät pro Fahrzeug 10 gleichwohl mehrere Gerätemanagement-Clients 16 unterstützen zu können, wird ein Gerätemanagement-Proxy verwendet. Auf jedem IP-fähigen System 46 läuft somit eine Instanz des Gerätemanagement-Agenten 15 und nutzt den zentralen Proxy des Gerätemanagement-Client 16.If multiple instances of the device management client 16 exist, then this activity is considered the best possible alternative by a single instance of the device management client 16 and additional device management agents 15 executed. To use a single device per vehicle 10 however, several device management clients 16 to be able to support, will Device Management Proxy used. On any IP-enabled system 46 Thus, an instance of the device management agent is running 15 and uses the central proxy of the device management client 16 ,

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

Das Fahrzeug-Content-Management 28 ist seitens des Backends 20 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 Datenmanagement 27, dieses speichert die Daten und Inhalt auf einheitliche Art. So wird die OEM-Varianz hinsichtlich Daten und Inhalt innerhalb des Fahrzeuges 10 vom Datenmanagement 27 vollständig abgedeckt. Dies bringt auch die eindeutige semantische und syntaktische Beziehung zwischen der Ausgabe des Datenmanagements 27 und dem zugehörigen Content-Management 18 seitens des Fahrzeuges 10 mit sich.The vehicle content management 28 is on the part of the backend 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 the data management 27 This saves the data and content in a consistent manner. Thus, the OEM variance in terms of data and content within the vehicle 10 from data management 27 completely covered. This also brings the unique semantic and syntactic relationship between the output of data management 27 and the associated content management 18 from the side of the vehicle 10 with himself.

Der SCOS-Server 22 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-Client 12 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-Server 22 geleitet werden. Um bei einem einzigen Gerät pro Fahrzeug 10 gleichwohl mehrere SW-Update-Clients unterstützen zu können, werden mehrere Varianten und Instanzen verwendet. Alle SW-Update-Client-Instanzen 12 werden hierbei vom Fahrzeugupdate-Server 14 orchestriert. So kann auf jedem IP-fähigen System eine Instanz des SW-Update-Clients 12 laufen.The SCOS 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. The SW 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 the SCOS server 22 be directed. To use a single device per vehicle 10 however, to support multiple SW update clients, multiple variants and instances are used. All SW Update client instances 12 are from the vehicle update server 14 orchestrated. Thus, on each IP-capable system, an instance of the SW Update Client 12 to run.

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

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

Der Download-Client 11 ist für das Herunterladen von Softwarekomponenten, Firmware oder anderem Inhalt in das Fahrzeug 10 zuständig. Der Download-Client 11 kann DLOTA oder irgendeine andere, beispielsweise auf HTTP, HTTPS oder FTP basierende Luftschnittstelle 29 unterstützen. Der Download-Client 11 verfügt vorzugsweise über eine Schnittstelle zu einem Content-Speicher 17 via Content-Management 18.The download client 11 is for downloading software components, firmware, or other content into the vehicle 10 responsible. The download client 11 can DLOTA or any other, for example on HTTP, HTTPS or FTP based air interface 29 support. The download client 11 preferably has an interface to a content store 17 via content management 18 ,

Der Fahrzeugupdate-Server 24 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 Fahrzeug 10 lässt sich vom Datenmanagement 27 beziehen. Diese Spezifikation verbindet die erforderlichen Dienste und Abläufe zu einem resultierenden Update-Prozess. Wenn das Fahrzeug 10 durch das Fahrzeugmanagement 25 erkannt und vermerkt wird, werden sein Zustand und Status dauerhaft durch das Datenmanagement 27 überwacht.The vehicle 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 and Service Management 10 can be derived from data management 27 Respectively. This specification links the required services and processes to a resulting update process. If the vehicle 10 through the vehicle management 25 is recognized and noted, its status and status become permanent through data management 27 supervised.

Der Fahrzeugupdate-Client 14 ist für die Ausführung der Anforderungen des Fahrzeugupdate-Servers 24 zuständig. Der Fahrzeugupdate-Client 14 koordiniert somit den Fahrzeugupdate-Prozess oder einen beliebigen Teil davon – Anwendungssoftware-Updates eingeschlossen – für das Fahrzeug 10. Um Flexibilität und einfache Anbindung an bestehende Technologien zu ermöglichen, implementiert der Fahrzeugupdate-Client 14 auch eine Management-Schnittstelle zum Gerätemanagement. Des Weiteren übernimmt der Fahrzeugupdate-Client 14 die Verantwortung für den heruntergeladenen Inhalt, empfängt den auf das Fahrzeug 10 bezogenen Teil – etwa die Update-Prozessdaten und andere Hilfsinformationen – und delegiert Update und Inhalt an die Client 12 bzgl. 13. The vehicle update client 14 is for the execution of the vehicle update server requirements 24 responsible. The vehicle update client 14 thus coordinates the vehicle update process or any part thereof - including application software updates - for the vehicle 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 the vehicle 10 related part - such as the update process data and other help information - and delegates update and content to the client 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 Datenmanagement 27 ist seitens des Backends 20 dafür zuständig, konsistente Daten und Inhalt an die Dienste zu liefern.The data management 27 is on the part of the backend 20 responsible for providing consistent data and content to the services.

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

Der Content-Speicher 17 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-Speichers 17 können innerhalb des Fahrzeuges 10 existieren und werden durch das Content-Management 18 verwaltet. Der Content-Speicher 17 kümmert sich um die Speicherung und kann für jede Art von Anwendung innerhalb des Fahrzeuges 10 genutzt werden.The content 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 of content storage 17 can be inside the vehicle 10 exist and are through content management 18 managed. The content store 17 takes care of the storage and can be used for any type of application within the vehicle 10 be used.

Der Steuergerät-Update-Client 12 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-Client 12 resp. 13 fungiert als Client und ist mit dem Fahrzeugupdate-Client 14 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.The ECU update client 12 respectively. 13 is responsible for running the application software or firmware update for a specific controller or partition. The ECU update client 12 respectively. 13 acts as a client and is available with the vehicle 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 in 2 dargestellt: ein über die Luftschnittstelle 29 mit einem Backend 20 wechselwirkendes Verbindungsmodul 31, ein mit dem Verbindungsmodul 31 wechselwirkendes robustes Datenhaltungsmodul 32 innerhalb des Fahrzeuges 10, eine mit dem Verbindungsmodul 31 und dem Datenhaltungsmodul 32 wechselwirkende Koordinierungsschicht 33, eine mit dem Verbindungsmodul 31 und der Koordinierungsschicht 33 wechselwirkende Benutzerinteraktion 34 und eine mit dem Datenhaltungsmodul 32 und der Koordinierungsschicht 33 wechselwirkende Installation 35.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 the air interface 29 with a backend 20 interactive connection module 31 , one with the connection module 31 interactive robust data storage module 32 inside the vehicle 10 , one with the connection module 31 and the data retention module 32 interactive coordinating layer 33 , one with the connection module 31 and the coordination layer 33 interactive user interaction 34 and one with the data retention module 32 and the coordination layer 33 interactive installation 35 ,

Das Verbindungsmodul 31 umfasst dabei eine autonome Interaktion mit dem Backend 20 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 Luftschnittstelle 29. Das Datenhaltungsmodul 32 umfasst eine autonome Speicherung und Einräumung von Zugang sowie eine von der Koordinierungsschicht 33 abhängige Reservierung und Freigabe von Speicherplatz. Die Installation 35 erfolgt mit einer durch die Koordinierungsschicht 33 erteilten Erlaubnis sowie einer auf ein Zielobjekt begrenzten Steuerungsgewalt und umfasst eine Steuerung, Kontrolle, Entscheidung, Ausführung und Überwachung der Installation 36.The connection module 31 includes an autonomous interaction with the backend 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 the air interface 29 , The data retention module 32 includes autonomous storage and granting of access as well as one of the co-ordination layer 33 dependent reservation and release of storage space. The installation 35 takes place with one through the coordination layer 33 granted permission, as well as a control power limited to a target object, and includes control, control, decision, execution and supervision of the installation 36 ,

Die Richtung, in der eine Reporting-Übergabe (handover) erfolgt, ist zum einen vom Fahrzeugupdate-Client 14 gesteuert, wenn sie weitere untergeordnete Komponenten betrifft – bspw. Softwareupdate-Clients 12, 13 –, und zum anderen auch von den Komponenten selbst, bspw. dem Verbindungsmodul 31 mittels Download-Client 11 oder Gerätemanagement-Client 16 oder der Benutzerinteraktion 34. Denn wenn auf Grund einer kritischen Schwachstelle (single point of failure) der Fahrzeugupdate-Client 14 ausfällt und beteiligte Komponenten wie die Benutzerinteraktion 34 oder das Verbindungsmodul 31 eine Interaktion mit dem Fahrzeugupdate-Client 14 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 Verbindungsmanagements 31 würde ein Gerätemanagement-Client 16 bei dem Backend 20 über bspw. den Ausfall eines Fahrzeugupdate-Clients 14 unter Hinzunahme der letzten bekannten Schritte und Informationen berichten. Im Falle der Benutzerinteraktion 34 würde der Benutzer informiert werden, dass es interne Fehler gibt und der Fahrzeugupdate-Client 14 nicht erreichbar ist (Autonomie). The direction in which a handover takes place is on the one hand by the vehicle 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. The connection module 31 via download client 11 or device management client 16 or the user interaction 34 , Because if due to a critical vulnerability (single point of failure) of the vehicle update client 14 fails and involved components like the user interaction 34 or the connection module 31 an interaction with the vehicle 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 of connection management 31 would be a device management client 16 at the backend 20 about, for example, the failure of a vehicle update client 14 with the addition of the last known steps and information. In the case of user interaction 34 the user would be informed that there are internal errors and the vehicle update client 14 is not achievable (autonomy).

Nachfolgend wird die auch in 2 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 Koordinierungsschicht 33 mittels des Fahrzeugupdate-Clients 14 behandelt Probleme auf ECU-Ebene bis hin zur Fahrzeugebene sowie als weitere Option der Unfall-Ebene (zu lösen im Backend 20).The robust coordination layer 33 using the vehicle 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 Datenhaltungsmodul 32, Verbindungsmodul 31 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) the data 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 Datenhaltungsmanagements 32 und des Verbindungsmanagements 31, indem es die notwendigen Informationen bereitstellt, damit der Download von Updatedaten entkoppelt von der Koordinierungsschicht 33 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 Fahrzeug 10 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 the data management system 32 and connection management 31 by providing the necessary information for the download of update data decoupled from the coordination 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 the vehicle 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 Koordinierungsschicht 33 stellt alle notwendigen Eingangsgrößen sicher, die es der Koordinierungsschicht 33 erlauben, jederzeit ein Update überhaupt zu beginnen, fortzusetzen oder, wenn für den Update definierte Eingangsgrößen und Sollwerte, die der Koordinierungsschicht 33 zur Verfügung stehen, nicht mit den realen Zuständen von ECUs, Clients, des Fahrzeuges 10 oder der Benutzerinteraktion 34 übereinstimmen, auch stoppen zu lassen oder gar, wenn die Koordinierungsschicht 33 parallel zu einer laufenden Updateinstallation Rückmeldung vom Backend 20 über das Verbindungsmodul 31 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 Koordinierungsschicht 33 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 Koordinierungsschicht 33 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.The coordination layer 33 ensures all the necessary input variables, which are the coordination layer 33 allow anytime to start an update at all, continue or, if defined for the update inputs and setpoints, that of the coordination layer 33 are available, not with the real states of ECUs, clients, the vehicle 10 or the user interaction 34 match, even stop or even if the coordination layer 33 parallel to an ongoing update installation Feedback from the backend 20 via the connection 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 coordinating layer 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. The coordination 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 Koordinierungsschicht 33 bezugnehmend auf 3 von mindestens einem der folgenden Umstände abhängen: die Fahrzeugzustände 50 können abgefragt werden (37) und entsprechen vorgegebenen Sollwerten (38); ein Fahrzeughalter oder Fahrer des Fahrzeuges 10 stimmt der Installation 36 zu (39); die Zustände 51 der Steuergeräte können abgefragt werden (40) und entsprechen vorgegebenen Sollwerten (41); eine für die Installation 36 benötigte Zeit ist insgesamt und für die betreffenden Steuergeräte bekannt (42); eine für das Rollback 36 benötigte Zeit ist insgesamt und für die betreffenden Steuergeräte bekannt (43); ein Fortschritt der Softwareupdate-Clients 12, 13 kann abgefragt werden (44) und entspricht vorgegebenen Sollwerten (45); eine Funktionalität der Softwareupdate-Clients 12, 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, the coordination layer 33 Referring to 3 depend on at least one of the following conditions: the vehicle conditions 50 can be queried ( 37 ) and correspond to predetermined setpoints ( 38 ); a vehicle owner or driver of the vehicle 10 agrees with the installation 36 to ( 39 ); the conditions 51 the control units can be queried ( 40 ) and correspond to predetermined setpoints ( 41 ); one for the installation 36 time required is known in its entirety and for the relevant control units ( 42 ); one for the rollback 36 time required is known in its entirety and for the relevant control units ( 43 ); an advance of software update clients 12 . 13 can be queried ( 44 ) and corresponds to predetermined setpoints ( 45 ); a functionality of the software 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-Clients 12, 13 sind in der Lage, das eigentliche Update (die Installation 36) einer ECU spezifisch für diese durchzuführen. Softwareupdate-Clients 12, 13 sind wie die anderen dem Fahrzeugupdate-Clients 14 untergeordneten Clients – bspw. der Download-Client 11 – in der Lage, spezifisch, in sich abgeschlossen und spezialisiert Funktionen auszuführen (4). Softwareupdate-Clients 12, 13 sind außerdem in der Lage, in ihrer Funktion Fehler festzustellen und Gegenmaßnahmen einzuleiten. Daher interagieren sie mit dem Fahrzeugupdate-Client 14 – bspw. um Berechtigungen zu erhalten, wenn ein Rollback 36 ausgeführt werden muss und es Auswirkung auf Funktionalität auf der Fahrzeugebene hat oder Reporting-Information an das Backend 20 oder über eine Benutzerinteraktion 34 zu übermitteln –, damit der Fahrzeugupdate-Client 14, der den Fahrzeugzustand 50 kennt und diesen steuern kann, letztendlich das Gesamtupdate steuern kann, einen definierten Zustand 51 des Fahrzeuges 10 unter Berücksichtigung der Verfügbarkeit der Fahrtüchtigkeit des Fahrzeuges 10 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-Client 14 erkennt das, damit eine Fahrzeugfahrfunktion beeinträchtig ist) die Übergabe an einen Benutzer durchführen kann. Im Falle, dass ein Softwareupdate-Client 12, 13 nicht reagiert, ist der Fahrzeugupdate-Client 14 in der Lage, Gegenmaßnahmen einzuleiten.All software 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 the vehicle 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 a rollback 36 must be executed and it has an impact on functionality at the vehicle level or reporting information to the backend 20 or via a user interaction 34 to submit - to the vehicle update client 14 that the vehicle condition 50 knows and can control this, ultimately can control the overall update, a defined state 51 of the vehicle 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 the vehicle update client 14 recognizes that for a vehicle driving function is impaired) can perform the transfer to a user. In the case of a software update client 12 . 13 is unresponsive, is the vehicle update client 14 able to take countermeasures.

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

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

Das robuste Datenhaltungsmodul 32 (Content Management 18) wird von der Koordinierungsschicht 33 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 Koordinierungsschicht 33 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 Rollback 36 oder nachdem ein Update vollständig verworfen wurde. The robust data storage module 32 (Content Management 18 ) is from the coordination 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 the coordination 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 a rollback 36 or after an update has been completely discarded.

Das Datenhaltungsmodul 32 meldet der Koordinierungsschicht 33 (sowie anderen Komponenten wie dem Verbindungsmodul 31) fortlaufend Reporting – bspw. bei Fehlern oder wenn ein Download einer geplanten Größe vollständig vorliegt und vom Datenhaltungsmodul 32 vollständig abgespeichert wurde, sodass die Koordinierungsschicht 33 weitere Update- und Installationsschritte durchführen und Bedingungen überprüfen kann (siehe 3). Alternativ kann auch das Verbindungsmodul 31 anstelle des Datenhaltungsmanagements 32 der Koordinierungsschicht 33 direkt über Fehler bezüglich eines Downloads fortlaufend berichten. The data 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 the data storage module 32 was completely saved, so the coordination layer 33 carry out further update and installation steps and check conditions (see 3 ). Alternatively, the connection module 31 instead of data management 32 the coordination layer 33 Report continuously about errors related to a download.

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

Das Ablegen von heruntergeladenen Daten ermöglicht das Datenhaltungsmodul 32, 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 downloaded data 32 , which offers the functionality to store data as they were handed over completely and forgery-proof via a unique reference.

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

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

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

Das Backend-Teilsystem erhält durch das Verbindungsmodul 31 eines Fahrzeuges 10 über jeden definierten Updateschritt des Fahrzeugs zu einer betreffenden Kampagne zusätzlich Reporting-Informationen neben Informationen über aufgerufene Backendschnittstellen. Basierend auf den dem Backend 20 zur Verfügung stehenden Informationen über Schnittstellenaufrufe sowie Reporting-Informationen von Fahrzeugen 10 bezüglich einer Kampagne führt das Backend 20 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 Fahrzeuge 10, 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 Fahrzeugen 10 auf eine robuste und korrekte Ausführung eines Updates geschlossen wird und fehlerhafte oder falsche Updates an zukünftigen Fahrzeugen 10 vermieden werden.The backend subsystem gets through the connection module 31 of a vehicle 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 the backend 20 available information about interface calls as well as reporting information of vehicles 10 The backend is related to a campaign 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 remaining vehicles 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 to future 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 Fahrzeug 10 automatisiert durchgeführt werden. Die Koordinierungsschicht 33 entspricht hauptsächlich der Werkstattperson, die den Fahrzeugzustand 50 für ein robustes und korrektes Update sicherstellt, bspw. dass genügend Stromversorgung vorhanden ist, indem eine externe Reservebatterie am Fahrzeug 10 angeschlossen wird (Fahrzeugupdate-Client 14, 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-Client 14, der die eigentliche Update-Installation 36 an betreffende Softwareupdate-Clients 12, 13 delegiert und interagiert) und nach jedem Flash- oder Installationsschritt an einer einzelnen ECU überprüft wird, ob das Überschreiben und die Installation 36 fehlerfrei erfolgt sind (Fahrzeugupdate-Client 14, der die Ist-Soll-Zustände 51 der am Update betreffenden ECUs und Softwareupdate-Clients 12, 13 vor, während und nach dem Update und nach jeder Installation 36 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 the vehicle 10 be carried out automatically. The coordination layer 33 Corresponds mainly to the workshop person who determines the vehicle condition 50 for a robust and correct update ensures, for example, that sufficient power is available by an external backup battery on the vehicle 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 the actual update installation 36 to relevant software update clients 12 . 13 delegated and interacts) and after each flash or installation step on a single ECU checks whether overwriting and installation 36 error-free (vehicle update client 14 , which is the actual target states 51 the update ECUs and software update clients 12 . 13 before, during and after the update and after each installation 36 knows and actively influences).

Diese gesamte Koordinierungsschicht 33 eines Fahrzeugupdates ist in erweiterter Form Aufgabe der Koordinierungsschicht 33 bzw. des Fahrzeugupdate-Clients 14, welcher all die Orchestrierungs- und Managementarbeit während des Fahrbetriebs des Fahrzeugs 10 durchführen muss und kann und entscheiden muss, wann das Fahrzeug 10 für welche Teilaktionen in einem bestimmten Fahrzeugzustand 50 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 the coordination layer 33 or the vehicle update client 14 Doing all the orchestration and management work while driving the vehicle 10 must and can and must decide when the vehicle 10 for which partial actions in a certain 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 (Verbindungsmodul 31, Datenhaltungsmodul 32, Koordinierungsschicht 33) 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 Verbindungsmodul 31 erhält Daten von einem authentifizierten Backend 20. In den Daten sind FOTA-Informationen enthalten, welche vom Verbindungsmodul 31 an die Koordinierungsschicht 33 als der FOTA-Daten zugeordneten Einheit weitergeleitet und bereitgestellt werden. Parallel hat das Verbindungsmodul 31 Reporting-Daten über den Erhalt und über eine erfolgreiche Weiterverteilung der FOTA-Daten an die verantwortliche Komponente zwischengespeichert und (je nachdem, wie das Verbindungsmodul 31 konfiguriert ist, mit dem Backend 20 zu kommunizieren) ggf. dem Backend 20 sofort mitgeteilt. The connection module 31 gets data from an authenticated backend 20 , The data includes FOTA information provided by the connection module 31 to the coordination layer 33 be forwarded and provided as the unit associated with FOTA data. Parallel has the connection module 31 Reporting data about the receipt and successful redistribution of the FOTA data is cached to the responsible component and (depending on how the connection module 31 is configured with the backend 20 if necessary) to the backend 20 communicated immediately.

FOTA-Updateverfügbarkeitsinformationen erreichen somit nicht nur das Fahrzeug 10 (bspw. weil vorher eine Updateverfügbarkeitsüberprüfung über einen Endbenutzer oder das Backend 20 ausgelöst wurde), sondern auch die verantwortliche Zielfunktionskomponente (Koordinierungsschicht 33 bzw. Fahrzeugupdate-Client 14) im Fahrzeug 10. 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 Benutzerinteraktion 34 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 the backend 20 was triggered), but also the responsible objective function component (coordination layer 33 or vehicle update client 14 ) in the vehicle 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 a user 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 Backend 20 bestimmte Reporting-Informationen an das Verbindungsmodul 31 übergeben. Das Verbindungsmodul 31 zwischenspeichert diese, um sie zu einem bestimmten geeigneten Zeitpunkt an das Backend 20 zu verschicken, oder verschickt diese ggf. sofort nach der Überreichung an das Backend 20. Das Backend 20 ist in der Lage, diese Reporting-Informationen über die Ausführung des Updates in einem Fahrzeug 10 zu interpretieren und diese Art der Reporting-Informationen aggregiert über viele weitere Fahrzeuge 10 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 the backend 20 certain reporting information to the connection module 31 to hand over. The connection module 31 caches them to the backend at a certain appropriate time 20 to send or, if necessary, send them immediately after the handover to the backend 20 , The backend 20 is able to provide this reporting information about the execution of the update in a vehicle 10 interpret this type of reporting information aggregated across many more vehicles 10 to control and, for example, pause the update campaign if the reporting information about certain update steps indicates erroneous executions.

Die Koordinierungsschicht 33 nutzt die FOTA-Updateinformationen und lässt beim Datenhaltungsmodul 32 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 Koordinierungsschicht 33 den Fahrzeugzustand 50 überprüft und steuert und für den Ablauf des gesamten Updates zuständig ist).The coordination layer 33 Uses the FOTA update information and leaves the data 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 the coordination layer 33 the vehicle condition 50 checks and controls and is responsible for running the entire update).

Hat die Koordinierungsschicht 33 erst einmal alle erforderlichen Informationen eingeholt, die es benötigt (Bestätigung des Benutzers durch Interaktion, wenn es erforderlich war, oder die Zusicherung des Datenhaltungsmanagements 32 über den zur Verfügung stehenden Speichers usw.), dann überreicht es parallel wieder Reporting-Informationen an das Verbindungsmodul 31, 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 Verbindungsmodul 31, indem es den Downloaddeskriptor – einen einheitlichen Ressourcenanzeiger (uniform resource locator, URL), Zugangsinformationen (credentials) etc. – aus den FOTA-Informationen verwendet und zusätzlich dem Verbindungsmodul 31 die Informationen mitgibt, wo und wie die zu herunterladenden Daten abgespeichert werden sollen (und zwar in dem reservierten Speicherbereich).Has the coordination layer 33 once it has obtained all the necessary information it needs (confirmation of the user through interaction, if necessary, or assurance of data management 32 over the available memory, etc.), then it hands over parallel reporting information to the connection 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 the connection module 31 by using the download descriptor - a uniform resource locator (URL), credentials, etc. - from the FOTA information and additionally the connection module 31 provides the information on where and how the data to be downloaded should be stored (in the reserved memory area).

Das Verbindungsmodul 31 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-Luftschnittstelle 29 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 (Koordinierungsschicht 33, Datenhaltungsmodul 32). Auch hier werden parallel nach der Delegation der Downloadaufgabe an das Verbindungsmodul 31 Reporting-Informationen zur Weiterleitung an das Backend 20 an das Verbindungsmodul 31 übergeben. Das Verbindungsmodul 31 teilt der Koordinierungsschicht 33 und Benutzerinteraktion 34 den Status des Downloads mit, falls ggf. über Benutzerinteraktion 34 der Status an den Benutzer weitergegeben werden muss und diese Art der Interaktion mit dem Benutzer in den FOTA-Informationen definiert und von der Koordinierungsschicht 33 interpretiert wurden und daher so ausgeführt werden müssen.The connection module 31 Performs the delegated task and takes into account larger megabyte or gigabyte data as well as different influences during the download via the OTA 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 the connection module 31 Reporting information for forwarding to the backend 20 to the connection module 31 to hand over. The connection module 31 shares the coordination layer 33 and user interaction 34 the status of the download, if necessary via user 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 the coordination layer 33 were interpreted and therefore must be carried out in this way.

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

Die Koordinierungsschicht 33 interpretiert Datenteile – die sogenannte Update-Ablauflogik (flow) und zugehörige Bedingungen für die konkrete Updateinstallationen – aus dem heruntergeladenen Fahrzeug 10-Updatepaket, die angeben, inwiefern weiterhin eine Benutzerinteraktion 34 erfolgen muss und ob eine Zustimmung eingeholt werden muss, bspw. das Update zu einem von der Koordinierungsschicht 33 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 Fahrzeug 10 bspw. in einen bestimmten Zustand 51 gebracht werden muss und eine Bestätigungseinholung des Benutzers notwendig ist. Diese Informationen sind als Ablauflogik Bestandteil des über das Verbindungsmodul 31 heruntergeladenen Fahrzeug-Updatedatenpakets. Darin kann außerdem enthalten sein, wie lange bspw. das Gesamtupdate andauert, welche Installationsausführungen (Softwareupdate-Clients 12, 13) betroffen sind, welche Steuergeräte oder Fahrzeugdomänen – etwa Infotainment oder Karosseriesteuerung (body control) – betroffen sind und in welchem Zustand 51 sich das Fahrzeug 10 befinden muss, d. h. einige der von der anstehenden Updateinstallation betroffenen Steuergeräte und Softwareupdate-Clients 12, 13 dürfen nur ausgeführt werden, wenn bspw. der Batteriestand des Fahrzeuges 10 einen bestimmten Ladezustand (level) hat, da die Updatezeit an einem Steuergerät dies erfordern würde.The coordination layer 33 interprets data parts - the so-called update process logic (flow) and associated conditions for the specific update installations - from the downloaded vehicle 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 the co-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 the vehicle 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 the connection 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 the vehicle 10 that is, some of the controllers and software update clients affected by the upcoming update installation 12 . 13 may only be carried out if, for example, the battery level of the vehicle 10 has a certain state of charge (level), since the update time at a control unit would require this.

Die Koordinierungsschicht 33 überprüft die in der Update-Ablauflogik enthaltenen Sollwerte und vergleicht diese mit Istwerten des Fahrzeuges 10, indem es die notwendigen Fahrzeug-Interfaces verwendet und so bspw. den Batteriezustand des Fahrzeuges 10 und ggf. den momentanen Grad der Batterieentladung erhält und im Soll-Istwert-Vergleich entscheidet, ob eine Installation 36 überhaupt gestartet werden kann. Falls eine Installation 36 bereits gestartet wurde und der Fahrzeugupdate-Client 14 parallel auf Grund des einzuhaltenden Sollwertes fortlaufend und parallel zur Ausführung der einzelnen Installation 36 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 Fahrzeugzustand 50 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 Rollback 36 zur Ausführung an den Softwareupdate-Client 12, 13 delegiert werden – je nachdem, wie schnell bspw. der Rollback 36 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-Client 14 den korrespondierenden Softwareupdate-Client 12, 13 mit Unterbrechungsbefehlen an. Der Fahrzeugupdate-Client 14 würde entsprechend seiner spezifischen Funktionalität seine aktuellen laufenden Aktionen ggf. zu Ende ausführen und die ECU in einem vom Fahrzeugupdate-Client 14 definierten (wenn auch nicht voll funktionsfähigen) Zustand 51 hinterlassen oder ggf. alle laufenden Aktionen unterbrechen und mit Statuszuständen an den Fahrzeugupdate-Client 14 berichten, sodass der Fahrzeugupdate-Client 14 über den Zustand 51 der Softwareupdate-Clients 12, 13 und des Steuergeräts in Kenntnis ist und nach seinen Update-Ablauflogik-Regeln (den Fahrzeugzustand 50 berücksichtigend) weiter verfahren kann. Pausieren eines Softwareupdate-Clients 12, 13 bedeutet, diesen in einen definierten Zustand 51 versetzen zu lassen, indem der Softwareupdate-Client 12, 13 einen definierten Zustand 51 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-Client 14 delegierten Ausführung zu starten. Eine Unterbrechung eines Softwareupdate-Clients 12, 13 bedeutet, eine einst delegierte Ausführungsaktion vollständig zu unterbrechen und von neuem ggf. mit neuen Inputwerten zu beginnen.The coordination layer 33 Checks the setpoints contained in the update logic and compares them with actual values of the vehicle 10 by using the necessary vehicle interfaces and so, for example, the battery condition of the vehicle 10 and possibly the current degree of battery discharge receives and decides in the setpoint-actual value comparison, whether an installation 36 can be started at all. If an installation 36 already started and the vehicle update client 14 parallel due to the setpoint to be maintained continuously and in parallel to the execution of each installation 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 the vehicle 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, a rollback 36 for execution to the software update client 12 . 13 be delegated - depending on how fast, for example, the rollback 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 the vehicle update client 14 the corresponding software update client 12 . 13 with interrupt commands. The vehicle update client 14 According to its specific functionality, it would eventually complete its current running actions and the ECU in a vehicle update client 14 defined (although not fully functional) state 51 leave behind or if necessary interrupt all ongoing actions and with status conditions to the vehicle update client 14 Report the vehicle update client 14 about the condition 51 the software update clients 12 . 13 and the controller and according to its update flow logic rules (vehicle state 50 taking into account). Pause a software update client 12 . 13 means this in a defined state 51 have the software 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 the vehicle update client 14 to start delegated execution. An interruption to a software update client 12 . 13 means completely interrupting a once-delegated execution action and starting again with new input values.

Die Koordinierungsschicht 33 überprüft zu Beginn, welche der betroffenen Softwareupdate-Clients 12, 13 für spezifische und vereinzelnde Updateinstallation überhaupt auf ein bestimmtes Zielsteuergerät oder auf eine Zieldomäne spezialisiert sind und welche dieser Softwareupdate-Clients 12, 13 den Fahrzeugzustand 50 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 Fahrzeugzustand 50 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 Fahrzeugzustand 50 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ände 51 im Fahrzeug 10 verlangt werden und mehrere Soll-Istwert-Vergleiche und Zustände 51 im Fahrzeug 10 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 Fahrzeugzustand 50 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 Fahrzeug 10 tatsächlich stillsteht und erst dann die Updateinstallation an einem Steuergerät mit Auswirkung auf Fahrzeugfahrfunktionalität vom korrespondierenden Softwareupdate-Client 12, 13 initiiert durch den Fahrzeugupdate-Client 14 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-Client 14 stellt fest, dass alle Bedingungen erfüllt sind und das Fahrzeug 10 bspw. auch stillsteht und führt die Updateinstallation am Motorsteuergerät aus. Ein Endbenutzer steigt ins Fahrzeug 10 ein und möchte losfahren, muss aber bspw. mehrere Minuten abwarten, da der vom Fahrzeugupdate-Client 14 künstlich herbeigeführte Fahrzeugzustand 50 (Fahrzeug 10 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 Rollback 36 nicht mehr funktioniert und das Fahrzeug 10 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. The coordination layer 33 first checks which of the affected software 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 these software update clients 12 . 13 the vehicle 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 the vehicle 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, the vehicle 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 the vehicle 10 be requested and multiple setpoint-actual comparisons and states 51 in the vehicle 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 the disused 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 the vehicle 10 actually stops and only then the update installation on a control unit with effect on vehicle driving functionality from the corresponding software update client 12 . 13 initiated by the vehicle 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. The vehicle update client 14 notes that all conditions are met and the vehicle 10 for example, also stands still and executes the update installation on the engine control unit. An end user gets into the vehicle 10 and wants to start, but has to wait, for example, several minutes because of the vehicle 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 a rollback 36 no longer works and the vehicle 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-Client 14 delegiert also insgesamt Ausführungsaktionen wie bspw. Speicherplatzreservierungen, Downloadvorgänge oder Updateinstallationsschritte an Softwareupdate-Clients 12, 13, die zuständig sind für Updateinstallationen in betroffenen Domänen oder an betroffenen Steuergeräten und stellt selbst die notwendigen Fahrzeugzustände 50 und ECU-Zustände 51 sicher, indem es beispielsweise nicht nur Ausführungsaktionen delegiert, sondern auch die Erreichbarkeit von bspw. Softwareupdate-Clients 12, 13 und ECUs vorher überprüfen lässt, den Batteriezustand und den Fahrzeugmodus (steht es still oder fährt es) überprüft, die Benutzerinteraktion 34 und Benutzerrückmeldung miteinbezieht und die einzelnen Rückgabewerte mit in seine Soll-Istwert-Vergleiche einschließt. Diese Orchestrierungsarbeit kann von der Koordinierungsschicht 33 bzw. von dem Fahrzeugupdate-Client 14 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).The vehicle update client 14 So delegates overall execution actions such as disk space reservations, download operations or update installation steps to software update clients 12 . 13 who are responsible for update installations in affected domains or affected ECUs and provides even the necessary 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 the user 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 the coordination layer 33 or from the vehicle 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) (Verbindungsmodul 31, Benutzerinteraktion 34) bereitzustellen, ist sichergestellt, dass selbst bei Ausfall der Koordinierungsschicht 33 die entkoppelten und autonomen Funktionskomponenten den letzten bekannten Zustand 51 und bspw. einen Ausfall weitergeben können – bspw. an das Backend 20 oder direkt über Benutzerinteraktion 34 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 the backend 20 or directly through user interaction 34 to the user.

Die Update-Ablauflogik-Definition ist entweder datenorientiert und es existiert eine Implementierungsgegenstelle im Fahrzeug 10 (hier: Koordinierungsschicht 33 bzw. Fahrzeugupdate-Client 14), 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 Fahrzeug 10 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 Koordinierungsschicht 33 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 the vehicle 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 the coordination layer 33 is performed.

Hat der Fahrzeugupdate-Client 14 durch Soll-Istwert-Vergleiche innerhalb des Fahrzeuges 10 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 Datenhaltungsmodul 32 interagiert. Has the vehicle update client 14 by reference-actual value comparisons within the vehicle 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 the data retention module 32 interacts.

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

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

Wenn bspw. der Zustand 51 der betreffenden Softwareupdate-Clients 12, 13 oder ECUs nicht mehr verfügbar ist oder der Zustand 51 der betroffenen ECUs und Softwareupdate-Clients 12, 13 durch den Fahrzeugupdate-Client 14 nicht mehr angefragt werden kann, stellt der Fahrzeugupdate-Client 14 einen bestimmten Fahrzeugzustand 50 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 and software update clients 12 . 13 through the vehicle update client 14 can no longer be requested, represents the vehicle update client 14 a specific 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 Aktionen 6165, die, falls erforderlich, solange wiederholt werden, bis das Verfahren 60 vollständig abgeschlossen wurde. Das Verfahren 60 wird hierbei durch den Fahrzeugupdate-Client 14 ausgeführt, welcher der Architektur nach 1 folgt. Das Verfahren 60 dient somit der Überwachung des Zusammenwirkens des Fahrzeugupdate-Clients 14 mit mehreren Softwareupdate-Clients 12, 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 the procedure 60 was completed completely. The procedure 60 This is done by the vehicle update client 14 which is the architecture according to 1 follows. The procedure 60 thus serves to monitor the interaction of the vehicle update client 14 with several software 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 Aktualisierung 64 beauftragt, das Fahrzeug 10 in einen sicheren Zustand zu versetzen (61). Hierbei werden dem Aktualisierungspaket (VUPA) Informationen entnommen, die die Absicherungsmöglichkeiten des Fahrzeuges 10 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 the update 64 instructed the vehicle 10 into a safe state ( 61 ). In this case, the update package (VUPA) information is taken that the hedge options of the vehicle 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-Client 14 entnimmt dem Aktualisierungspaket weitere Steuersequenzen, welche bewirken, dass die Steuergeräte den in Schritt 61 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 the vehicle update client 14 takes from the update package further control sequences, which cause the ECUs in step 61 Do not leave the safe state and ignore signals from outside, for example to release the electronic handbrake.

Ist diese Absicherung 61, 62 des Fahrzeuges 10 durchgeführt, beauftragt der Fahrzeugupdate-Client 14 die erfindungsgemäße Komponente, die permanente Überwachung des Fahrzeuges 10 einzuleiten. Eine hierzu geeignete Abfrage 63 umfasst die Auswertung der Batteriespannung oder mit Hilfe der Fahrzeugsteuergeräte den gerade vorliegenden energetischen detaillierteren Zustand des Fahrzeuges 10. 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 Fahrzeuges 10 ebenfalls mitgeteilt werden kann, wann sie für die Aktualisierung 64 benötigt werden. Andernfalls erhalten sie den Befehl, einen Ruhezustand einzunehmen, der die Energieaufnahme des Fahrzeuges 10 während der Aktualisierung 64 minimiert. Die für die Aktualisierung 64 vorgesehenen Steuergeräte werden reaktiviert, sobald sie selbst aktualisiert (64) werden sollen. Is this hedging 61 . 62 of the vehicle 10 performed, the vehicle update client instructed 14 the component of the invention, the permanent monitoring of the vehicle 10 initiate. A suitable 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 the vehicle 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 the vehicle 10 can also be notified when they are for the update 64 needed. Otherwise, they receive the command to enter a state of rest, the energy consumption of the vehicle 10 during the update 64 minimized. The for the update 64 provided controllers are reactivated as soon as they are updated ( 64 ) should be.

Ist der energetische Zustand des Fahrzeuges 10 unzureichend, um weitere Aktualisierungsvorgänge 64 zuzulassen, so gibt die Komponente dem Fahrzeugupdate-Client 14 das Signal, den laufenden Aktualisierungsvorgang 64 abzuschließen und dann den Status der Aktualisierung 64 sicher abzulegen. Bei weiteren Startvorgängen wird die erfindungsgemäße Komponente dann wiederum dem Fahrzeugupdate-Client 14 signalisieren, dass ein Fahrzeugzustand vorliegt, der weitere Aktualisierungen 64 von Steuergeräten zulässt. In diesem Fall fährt der Fahrzeugupdate-Client 14 an der Stelle mit der Aktualisierung 64 der Steuergeräte fort, an der sie vorher unterbrochen wurde. Is the energetic condition of the vehicle 10 inadequate for further updates 64 to allow, the component gives the vehicle update client 14 the signal, the current update process 64 complete and then the status of the update 64 to safely drop. For further boot processes, the component according to the invention is then again the vehicle 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 the update 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 Fahrzeuges 10 ausreichend für den nächsten Aktualisierungsvorgang 64 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 the vehicle 10 sufficient for the next update process 64 is. This in turn concerns a coherent set of updates ( 64 ) Control devices.

Da ein Aktualisierungsvorgang 64 mehrere Stunden benötigen kann, sind diejenigen Fahrzeugsignale zu überwachen, die den Startvorgang des Motors einleiten bzw. begleiten. Ein Startvorgang darf den Aktualisierungsvorgang 64 in einem sicheren Zustand unterbrechen; die Mobilität des Fahrzeuges 10 hat hier höhere Priorität. Ist ein Abbruch des Verfahrens 60 nicht sofort möglich, da vitale Steuergeräte des Fahrzeuges 10 sich noch in der Aktualisierungsphase 64 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 Fahrzeug 10 in einen fahrbereiten Zustand zu versetzen. As an update 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 the vehicle 10 has higher priority here. Is an abort of the procedure 60 not immediately possible, because vital ECUs of the vehicle 10 still in the update 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 the vehicle 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)

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.7A 2016-01-28 2016-01-28 Method and device for monitoring an update of a vehicle Pending DE102016201279A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102016201279.7A DE102016201279A1 (en) 2016-01-28 2016-01-28 Method and device for monitoring an update of a vehicle

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102016201279.7A DE102016201279A1 (en) 2016-01-28 2016-01-28 Method and device for monitoring an update of a vehicle

Publications (1)

Publication Number Publication Date
DE102016201279A1 true DE102016201279A1 (en) 2017-08-03

Family

ID=59328157

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016201279.7A Pending DE102016201279A1 (en) 2016-01-28 2016-01-28 Method and device for monitoring an update of a vehicle

Country Status (1)

Country Link
DE (1) DE102016201279A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018214999A1 (en) 2017-10-13 2019-04-18 Robert Bosch Gmbh Device for securing diagnostic commands to a control unit and corresponding motor vehicle
DE102018204188A1 (en) 2018-03-20 2019-09-26 Audi Ag A method for updating a software application in a device that is in operation, and device and motor vehicle
WO2021093984A1 (en) 2019-11-15 2021-05-20 Sew-Eurodrive Gmbh & Co. Kg Method for transferring data
DE102019131766A1 (en) * 2019-11-25 2021-05-27 Mtu 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-30 2022-06-07 Paccar Inc Techniques for improving security of encrypted vehicle software updates
US11449327B2 (en) 2018-11-30 2022-09-20 Paccar Inc Error-resilient over-the-air software updates for vehicles
US11726771B2 (en) 2018-06-29 2023-08-15 Mitsubishi Electric Corporation Update control device, update control system, and update control method

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10105454A1 (en) 2001-02-07 2002-08-29 Bosch Gmbh Robert Procedure for the automatic addition of software

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10105454A1 (en) 2001-02-07 2002-08-29 Bosch Gmbh Robert Procedure for the automatic addition of software

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102018214999A1 (en) 2017-10-13 2019-04-18 Robert Bosch Gmbh Device for securing diagnostic commands to a control unit and corresponding motor vehicle
WO2019072840A1 (en) 2017-10-13 2019-04-18 Robert Bosch Gmbh Apparatus for protecting diagnosis commands to a controller, and corresponding motor vehicle
CN111183412A (en) * 2017-10-13 2020-05-19 罗伯特·博世有限公司 Device for protecting diagnostic commands to a control unit and corresponding motor vehicle
CN111183412B (en) * 2017-10-13 2024-03-01 罗伯特·博世有限公司 Device for protecting diagnostic instructions for a control device and corresponding motor vehicle
US11455393B2 (en) 2017-10-13 2022-09-27 Robert Bosch Gmbh Device for securing diagnostic commands to a control unit, and corresponding motor vehicle
DE102018204188A1 (en) 2018-03-20 2019-09-26 Audi Ag A method for updating a software application in a device that is in operation, and device and motor vehicle
WO2019179779A1 (en) 2018-03-20 2019-09-26 Audi Ag Method for carrying out an update to a software application in a device which is operating, and device and motor vehicle
US11726771B2 (en) 2018-06-29 2023-08-15 Mitsubishi Electric Corporation Update control device, update control system, and update control method
US11356425B2 (en) 2018-11-30 2022-06-07 Paccar Inc Techniques for improving security of encrypted vehicle software updates
US11449327B2 (en) 2018-11-30 2022-09-20 Paccar Inc Error-resilient over-the-air software updates for vehicles
WO2021093984A1 (en) 2019-11-15 2021-05-20 Sew-Eurodrive Gmbh & Co. Kg Method for transferring data
DE102019131766B8 (en) 2019-11-25 2021-10-14 Mtu 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-25 2021-09-23 Mtu 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-25 2021-05-27 Mtu 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

Publication Publication Date Title
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
DE102017104830B4 (en) SOFTWARE MANAGEMENT SYSTEM FOR A VEHICLE, MANAGEMENT SERVER AND VEHICLE
DE102017113435A1 (en) Vehicle gateway network protection
EP1967435B1 (en) Method for adaptive configuration recognition
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
DE102019126804A1 (en) VEHICLE SOFTWARE EXAM
WO2010124775A1 (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
DE102020104551A1 (en) BACKUP AND RESTORE A VEHICLE CONTROL CONFIGURATION USING DATA SNAPSHOTS
DE102011075776A1 (en) Method and system for updating a shared memory
EP3393859A1 (en) Method for modifying safety- and/or security-relevant control devices in a motor vehicle, and a corresponding apparatus
DE102014101917A1 (en) CAN-based immobilizer
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
DE102018118568A1 (en) REDUNDANT ACTIVE CONTROL SYSTEM COORDINATION
DE102015114684A1 (en) Vehicle Total reset
DE102015216265A1 (en) Method and subsystem for installing a software update in a vehicle
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
WO2017108409A1 (en) Improved method and improved device for configuring and controlling electrical devices of a vehicle
DE102022110251A1 (en) OTA MASTER, CENTER, SYSTEM, PROCEDURE, NON-TRANSITORY STORAGE MEDIUM AND VEHICLE

Legal Events

Date Code Title Description
R012 Request for examination validly filed