WO2017125181A1 - Method for updating control device software, preferably for a motor vehicle - Google Patents
Method for updating control device software, preferably for a motor vehicle Download PDFInfo
- Publication number
- WO2017125181A1 WO2017125181A1 PCT/EP2016/077936 EP2016077936W WO2017125181A1 WO 2017125181 A1 WO2017125181 A1 WO 2017125181A1 EP 2016077936 W EP2016077936 W EP 2016077936W WO 2017125181 A1 WO2017125181 A1 WO 2017125181A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- application
- program
- software
- executed
- parts
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/656—Updates while running
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
Definitions
- the present invention relates to a method for updating software of a control device, preferably for a motor vehicle, according to the preamble of the independent claim.
- a generic method is known for example from WO 2005/004160 A2.
- a software update of a control unit by means of a flash programming of a multi-segment flash memory of the control unit via a serial interface, a request to be made to the flash programming is defined, a sequence of the flash programming by states and transitions of the Software-defined state machines specified and availability, security and
- ECUs Automated electronic control units in automobiles often have the ability to update the software of the ECU or parts of this software.
- microcontrollers ⁇
- flash memory electrically erasable memory
- flashloader or flashbootloader FBL
- FBL flashbootloader
- Diagnostic communication uses a specific diagnostic protocol. For reprogramming the software finds a change in the so-called Programming mode instead. This mode change involves that
- Diagnostic communication is used, for example, to perform a clear memory and to transfer new software and flash.
- the inventive method according to the features of the independent claim has the advantage that, for example, during an update of an air conditioning function at least one important vehicle function such as the function of central locking or terminal control can be maintained.
- memory does not have to be stored redundantly.
- the electrically writable memory is divided into blocks.
- a block is the smallest, erasable unit.
- the problem is that the blocks of a partition can not be accessed (execute code, read data), while within this partition an Erase or. Delete operation or a write operation is performed. This has the consequence that a sensible division of software or.
- Application functions on the available flash partitions must be made to ensure that no code is executed, which lies in one of the partitions to be programmed.
- the basic software consists of an application software or application and a Flashbootloader.
- the Flashbootloader is used to update all parts of the software at once.
- the Flashbootloader is able to exchange parts of the application software while running other parts of the application (s).
- the Flashbootloader needs to know the dependencies and the exact location in the memory of the applications to be executed. This is made possible, for example, by administrative data in the memory, in which, for example, function pointers are deposited that point to the applications to be executed. When creating this administrative data (for example, during the so-called build process), all dependencies must be known so that all
- FIG. 1 shows the schematic structure of the control device with partitioning including administrative data
- FIG. 2 is a sequence diagram of the flash boot loader with support for applications;
- Figure 3 is a schematic representation of two flash phases with
- FIG. 4 shows an exemplary partitioning of the electrically erasable
- a control unit 10 comprises at least one microcontroller 12. In the
- Microcontroller 12 is at least one electrically erasable memory 14
- applications 20, 20.1, 20.n are stored. These are programs that perform certain functions that are particularly associated with a motor vehicle. So it is a variety of applications 20.1, 20.n, 20.x such as a program for a central locking, a
- Terminal control a door control, a heating control, a
- the corresponding applications 20 run in the control unit 10.
- the control unit 10 is connected, for example via a bus system 17 with other components 19. These components are, for example, vehicle components, which depend on the
- a program 16 for at least partially deleting and writing the electrically erasable memory 14 is also provided, hereinafter referred to as flash bootloader 16.
- the Flashbootloader 16 is used for deleting and / or new
- a basic software 26 an operating system 28 and a driver 30 (CDD Complex Device Driver) are stored in the electrically erasable memory 14.
- Flashbootloader 16 is provided. This is also like the other applications 20 in electrically erasable memory 14.
- the flash boot loader 16 is now able to selectively update certain applications 20.x or the associated software, associated data, etc., while preferably particularly important application 20.1, 20 . n, continue to be executed.
- management data 33 are now arranged in the electrically erasable memory 14. This management data 33 enables the flash boot loader 16 to recognize the dependencies and the exact location in the memory 14 of the applications 20 to be executed.
- 33 function pointers are stored in the administration data, which point to the applications 20 or software of the applications 20 to be executed.
- management data 33 For example, in the form of tables, these dependencies are known after creation of the complete program and mapped in the management data 33.
- 20 associated management data 33 are preferably stored on the electrically erasable memory 14 for each application.
- These management data 33 are also generated for the base software 26 and / or the operating system 28 and / or the driver 30 and stored in the electrically erasable memory 14.
- FIG. 2 shows by way of example the course of the updating of a
- a master 23 for the flash process sends in a step 101 a corresponding session change command to an application 20, preferably to such an application 20, which usually handles the diagnostic communication. This command requires a change of the operating mode.
- the application 20 starts the flash boot loader 16, possibly as part of a restart, step 103.
- the flash boot loader 16 receives the corresponding restart command of the application 20.
- the flash boot loader 16 returns its operational readiness to the master 23 in a step 105.
- a program sequence 106 is executed. Part of this program sequence 106 is the communication of the Flashbootloaders 16 to another application 20.1, 20, 20 n, this further, step 107. This is done by resorting to the associated management data 33, in which the corresponding program sequences are stored as described.
- the execution of the function of the application 20 by the flash boot loader 16 is performed cyclically. In addition, certain will continue below
- Flashbootloader 16 The master 23 then sends a delete command to the
- Flashbootloader 16 step 109.
- the Flashbootloader executes the
- program sequence 1 13 will continue
- the execution of the application 20.1, 20 which is still to be executed includes execution of corresponding communication between the flash boot loader 16 and the corresponding application 20.
- the flash boot loader 16 After successful deletion of the application 20.x to be updated, the flash boot loader 16 returns a positive feedback to the master 23.
- a program sequence 1 19 is executed which continues to carry out the desired application 20, optionally with communication between the flash boot loader 16 and the application 20, step 121 or by resorting to the corresponding administration data 33.
- the master 23 then transmits the data to be stored to the Flashbootloader 16, step 123.
- the Flashbootloader 16 writes the transmitted data for the
- step 125 This is followed by the next program sequence 127, in which the transfer of the function to the application 20 takes place and furthermore the
- the flash boot loader 16 gives a corresponding positive
- the master 23 causes a change of the operating mode, for example, in the default mode, step
- the master 23 sends a corresponding command to the
- Flash boot loader 16 step 133.
- the flash boot loader 16 sends a corresponding command in step 135 to the applications 20, which causes a start of the applications 20.
- the application 20 returns a response signal to the master 23, step 137.
- the application 20 itself executes the corresponding application software, step 139.
- the master 23 can be, for example, a diagnostic tester that is used in the workshop. Alternatively, however, it could also be other control devices that record wirelessly with the control unit 10, for example.
- FIG. 3 shows schematically the different hardware or. Software layers. A corresponding
- Hardware 32 includes, for example, the microcontroller 12 with electrically erasable memory 14. It runs a base software 26, via which the execution using the Flashbootloaders 16 of the applications 20. n, 20.1 takes place, optionally via the driver 30. In addition, a
- Real-time environment 24 is provided, on which the applications 20 can be operated in quasi real-time. Schematically represented are still a
- the continuous arrows 35 symbolize which of the components shown are executed.
- the flash boot loader 16 causes the basic software 26 to be executed.
- the base software 26 not all shares need to be executed. If appropriate, it may also be possible via the management data 33 to control that only a part or parts of the basic software 26 are executed.
- Embodiment according to Figure 3 the application 20.x is to be updated. During the update, however, applications 20.1 and 20.n should continue to run. The update is in the lower image of the figure
- the updating of the application 20.x and at least partial execution of the communication with the master 23 by the flash boot loader 16 takes place.
- the flash boot loader 16 furthermore controls the updating of the application 20. x.
- the Flashbootloader 16 continues to take over the
- FIG. 4 shows, by way of example, the structure and assignment of the electrically erasable memory 14.
- four partitions 40, 41, 42, 43 are provided, a plurality of blocks 45 are located in one partition.
- a block 45 is the smallest erasable unit of the electrically erasable memory 14.
- Blocks 45 of a partition 40-43 can not be accessed (execute code, read data) if during this partition 40-43 an erase or write operation is executed. This has the consequence that a meaningful division of the applications 20 with associated management data 33 must be made to the available partitions 40-43 to ensure that no code is executed in one of the partitions 40-43 to be programmed or updated lies. Exchangeability of individual software components or applications 20, while other applications 20 are executed, depends on the distribution of the software components or applications.
- two flash bootloaders 16, 16.1, 16.2, preferably on different partitions could also be located on the partitions 40, 41.
- the provision of only a single Flashbootloaders 16 would be equally possible.
- Flash boot loader 16 could also be located outside of electrically erasable memory 14.
- the flash boot loader 16 is capable of handling the requirements for diagnostic communication with the master 23 and / or the applications 20. As described, it is capable of starting a delete operation or writing data. He is also able to stop applications 20 to replace the software part to be replaced or the application 20 (delete, write) and then start again. Furthermore, the Flashbootloader 16 is capable of other applications
- the method with the associated device preferably finds application in the updating of software of a control device, in particular for
- Diagnostic tester example in the workshop or wirelessly be initiated by a remote control function remotely as the master 23.
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
Description
Beschreibung Titel Description title
Verfahren zum Aktualisieren von Software eines Steuergerätes, vorzugsweise für ein Kraftfahrzeug Method for updating software of a control unit, preferably for a motor vehicle
Stand der Technik State of the art
Die vorliegende Erfindung betrifft ein Verfahren zum Aktualisieren von Software eines Steuergerätes, vorzugsweise für ein Kraftfahrzeug, nach der Gattung des unabhängigen Anspruchs. The present invention relates to a method for updating software of a control device, preferably for a motor vehicle, according to the preamble of the independent claim.
Ein gattungsgemäßes Verfahren ist beispielsweise aus der WO 2005/004160 A2 bekannt. Zur Durchführung eines Software-Updates eines Steuergerätes durch eine Flash-Programmierung eines mehrere Segmente aufweisenden Flash- Speichers des Steuergerätes über eine serielle Schnittstelle wird eine an die Flash-Programmierung zu stellende Anforderung festgelegt, ein Ablauf der Flash- Programmierung durch ein Zustände und Übergänge der softwaredefinierenden Zustandsautomaten spezifiziert und Verfügbarkeits-, Sicherheits-und A generic method is known for example from WO 2005/004160 A2. In order to carry out a software update of a control unit by means of a flash programming of a multi-segment flash memory of the control unit via a serial interface, a request to be made to the flash programming is defined, a sequence of the flash programming by states and transitions of the Software-defined state machines specified and availability, security and
Zuverlässigkeitsanforderungen eines jeden Zustands und eines jeden Übergangs des Zustandsautomaten überprüft. Reliability requirements of each state and each transition of the state machine checked.
Elektronische Steuergeräte (ECUs) im Automobil verfügen häufig über eine Möglichkeit, die Software des Steuergerätes oder Teile dieser Software zu aktualisieren. Bei modernen Mikrocontrollern (μθ) geschieht dies in der Regel durch das Löschen und neu Beschreiben eines elektrisch löschbaren Speichers (Flash-Memory). Dieses sogenannte Flashen wird in der Regel durch eine spezielle Software ausgeführt, welche als Flashloader oder Flashbootloader (FBL) bezeichnet wird. Viele Automobilhersteller definieren einen Updateprozess, der genau beschreibt, in welcher Reihenfolge verschiedene Diagnosefunktionen auszuführen sind, um ein Software-Update durchzuführen. Für die Automated electronic control units (ECUs) in automobiles often have the ability to update the software of the ECU or parts of this software. In modern microcontrollers (μθ), this is usually done by erasing and rewriting an electrically erasable memory (flash memory). This so-called flashing is usually done by a special software called flashloader or flashbootloader (FBL). Many car manufacturers define an update process that accurately describes in which order different diagnostic functions are to be performed to perform a software update. For the
Diagnosekommunikation wird ein bestimmtes Diagnoseprotokoll verwendet. Zur Reprogrammierung der Software findet ein Wechsel in den sogenannten Programmier-Modus statt. Dieser Modus-Wechsel beinhaltet, dass die Diagnostic communication uses a specific diagnostic protocol. For reprogramming the software finds a change in the so-called Programming mode instead. This mode change involves that
Applikationssoftware beendet wird und auf dem Mikrocontroller nur noch der Flashbootloader ausgeführt wird. Dieser wiederum wird mit Hilfe der Application software is terminated and on the microcontroller only the Flashbootloader is running. This in turn will help with the help of
Diagnosekommunikation dazu verwendet, um beispielsweise ein Löschen des Speichers durchzuführen und neue Software zu übertragen und zu flashen.Diagnostic communication is used, for example, to perform a clear memory and to transfer new software and flash.
Während der Flashbootloader ausgeführt wird, sind komplexe While the Flashbootloader is running, there are complex ones
Steuergerätefunktionen bzw. Applikationen nicht verfügbar, da die ECU functions or applications not available because the
entsprechende Software bzw. Applikation nicht ausgeführt wird. Während des Flashvorgangs können, selbst wenn nur Teile der Software aktualisiert werden, keine weiteren Applikationsfunktionen ausgeführt werden, da der Flashbootloader hierzu nicht in der Lage ist. Bedingt durch die Verteilung von Softwarefunktionen auf verschiedene Steuergeräte und die Anforderung, Software-Teile nicht nur in der Werkstatt, sondern auch über Funkverbindungen über Entfernungen hinweg aktualisieren zu können, besteht der Wunsch,appropriate software or application is not executed. During the flash process, even if only parts of the software are updated, no additional application functions can be executed because the flashbootloader is unable to do so. Due to the distribution of software functions to different ECUs and the requirement to be able to update software parts not only in the workshop, but also over radio links over distances, there is a desire
Software-Teile ersetzen zu können, ohne während der Zeit der Aktualisierung auf andere Applikationen zu verzichten. To replace software parts without sacrificing other applications during the time of the update.
Offenbarung der Erfindung Disclosure of the invention
Das erfindungsgemäße Verfahren gemäß den Merkmalen des unabhängigen Anspruchs hat demgegenüber den Vorteil, dass beispielsweise während einem Update einer Klimaanlagenfunktion zumindest eine wichtige Fahrzeugfunktion wie beispielsweise die Funktion der Zentralverriegelung oder Klemmensteuerung aufrechterhalten werden kann. Außerdem müssen hierbei Speicher nicht redundant vorgehalten werden. The inventive method according to the features of the independent claim has the advantage that, for example, during an update of an air conditioning function at least one important vehicle function such as the function of central locking or terminal control can be maintained. In addition, memory does not have to be stored redundantly.
Diese Aufgabe wird erfindungsgemäß mit Hilfe eines speziellen Programms, eines sogenannten Flashbootloaders gelöst, welcher in der Lage ist, This object is achieved according to the invention with the aid of a special program, a so-called flash bootloader, which is able to
Softwareanteile einer Applikation auszuführen bzw. eine entsprechende Software parts of an application to execute or a corresponding
Applikation auszuführen, während er andere Applikationen aktualisiert. Es handelt sich also um einen Flashbootloader mit der Fähigkeit, Application while updating other applications. So it's a Flashbootloader with the ability to
Applikationssoftware auszuführen. Execute application software.
Bevorzugt ist der elektrisch beschreibbare Speicher (Flash-Speicher) in Blöcke aufgeteilt. Ein Block ist die kleinste, löschbare Einheit. Mehrere Blöcke befinden sich in einer Partition und der gesamte Speicher besteht in der Regel aus mehreren Partitionen. Bei der beschriebenen Lösungen besteht das Problem, dass auf die Blöcke einer Partition nicht zugegriffen werden kann (Code ausführen, Daten lesen), während innerhalb dieser Partition eine Erase-bzw. Lösch-Operation oder eine Write bzw. Schreib-Operation ausgeführt wird. Das hat zur Folge, dass eine sinnvolle Aufteilung der Software-bzw. Applikations- Funktionen auf die verfügbaren Flash-Partitionen vorgenommen werden muss, um sicherzustellen, dass kein Code ausgeführt wird, der in einer der zu programmierenden Partitionen liegt. Preferably, the electrically writable memory (flash memory) is divided into blocks. A block is the smallest, erasable unit. There are several blocks in one partition and all memory is usually there several partitions. In the solutions described, the problem is that the blocks of a partition can not be accessed (execute code, read data), while within this partition an Erase or. Delete operation or a write operation is performed. This has the consequence that a sensible division of software or. Application functions on the available flash partitions must be made to ensure that no code is executed, which lies in one of the partitions to be programmed.
Die grundsätzliche Software besteht wie bisher aus einer Applikations-Software bzw. Applikation und einem Flashbootloader. Der Flashbootloader wird verwendet, um alle Teile der Software auf einmal zu aktualisieren. Zusätzlich ist der Flashbootloader in der Lage, Teile der Applikationssoftware auszutauschen und währenddessen andere Teile der Applikation(en) auszuführen. Hierzu muss der Flashbootloader die Abhängigkeiten und die genaue Lage im Speicher der auszuführenden Applikationen kennen. Möglich wird dies beispielsweise durch Verwaltungsdaten im Speicher, in denen beispielsweise Funktionspointer hinterlegt sind, die auf die auszuführenden Applikationen zeigen. Bei der Erstellung dieser Verwaltungsdaten (beispielsweise während des sogenannten Build-Vorgangs) müssen alle Abhängigkeiten bekannt sein, damit alle As before, the basic software consists of an application software or application and a Flashbootloader. The Flashbootloader is used to update all parts of the software at once. In addition, the Flashbootloader is able to exchange parts of the application software while running other parts of the application (s). For this, the Flashbootloader needs to know the dependencies and the exact location in the memory of the applications to be executed. This is made possible, for example, by administrative data in the memory, in which, for example, function pointers are deposited that point to the applications to be executed. When creating this administrative data (for example, during the so-called build process), all dependencies must be known so that all
notwendigen Funktionen Teil der Verwaltungsdaten sind. necessary functions are part of the administrative data.
Weitere zweckmäßige Weiterbildungen ergeben sich aus weiteren abhängigen Ansprüchen und der Beschreibung. Further expedient developments emerge from further dependent claims and the description.
Kurze Beschreibung der Zeichnungen Brief description of the drawings
Nachfolgend wird ein Ausführungsbeispiel der Erfindung unter Bezugnahme auf die begleitende Zeichnung im Detail beschrieben. Dabei zeigen: Hereinafter, an embodiment of the invention will be described in detail with reference to the accompanying drawings. Showing:
Figur 1 den schematischen Aufbau des Steuergeräts mit Partitionierung inklusive Verwaltungsdaten, FIG. 1 shows the schematic structure of the control device with partitioning including administrative data,
Figur 2 ein Sequenzdiagramm des Flashbootloaders mit Unterstützung für Applikationen, Figur 3 eine schematische Darstellung zweier Flashphasen mitFIG. 2 is a sequence diagram of the flash boot loader with support for applications; Figure 3 is a schematic representation of two flash phases with
Flashbootloader sowie Flashbootloader as well
Figur 4 eine beispielhafte Partitionierung des elektrisch löschbaren FIG. 4 shows an exemplary partitioning of the electrically erasable
Speichers. Memory.
Ausführungsform der Erfindung Embodiment of the invention
Ein Steuergerät 10 umfasst zumindest einen MikroController 12. In dem A control unit 10 comprises at least one microcontroller 12. In the
MikroController 12 ist zumindest ein elektrisch löschbarer Speicher 14 Microcontroller 12 is at least one electrically erasable memory 14
vorgesehen. In dem elektrisch löschbaren Speicher 14 sind Applikationen 20, 20.1 ,20.n abgelegt. Hierbei handelt es sich um Programme, die bestimmte Funktionen, die insbesondere mit einem Kraftfahrzeug verbunden sind, durchführen. Es handelt sich also um eine Vielzahl von Applikationen 20.1 ,20.n, 20.x wie beispielsweise ein Programm für eine Zentralverriegelung, eine intended. In the electrically erasable memory 14 applications 20, 20.1, 20.n are stored. These are programs that perform certain functions that are particularly associated with a motor vehicle. So it is a variety of applications 20.1, 20.n, 20.x such as a program for a central locking, a
Klemmensteuerung, eine Türsteuerung, eine Heizungssteuerung, eine Terminal control, a door control, a heating control, a
Wegfahrsperre oder ähnliches. Die entsprechenden Applikationen 20 laufen in dem Steuergerät 10. Das Steuergerät 10 ist beispielsweise über ein Bussystem 17 mit weiteren Komponenten 19 verbunden. Bei diesen Komponenten handelt es sich beispielsweise um Fahrzeugkomponenten, welche abhängig von denImmobilizer or similar. The corresponding applications 20 run in the control unit 10. The control unit 10 is connected, for example via a bus system 17 with other components 19. These components are, for example, vehicle components, which depend on the
Applikationen 20 angesteuert werden wie beispielsweise die Applications 20 are controlled such as the
Zentralverriegelung, entsprechende Klemmen (Zündung ein/aus etc.), Aktuatoren zur Türsteuerung, Klimaanlage etc. In dem MikroController 12 ist zudem ein Programm 16 zum zumindest teilweisen Löschen und Beschreiben des elektrisch löschbaren Speichers 14 vorgesehen, nachfolgend als Flashbootloader 16 bezeichnet. Der Flashbootloader 16 dient dem Löschen und/oder neu Central locking, corresponding terminals (ignition on / off, etc.), actuators for door control, air conditioning, etc. In the microcontroller 12, a program 16 for at least partially deleting and writing the electrically erasable memory 14 is also provided, hereinafter referred to as flash bootloader 16. The Flashbootloader 16 is used for deleting and / or new
Beschreiben von Software bestimmte Programme wie nachfolgend noch ausgeführt. Außerdem sind in dem elektrisch löschbaren Speicher 14 auch eine Basissoftware 26, ein Betriebssystem 28 sowie ein Treiber 30 (CDD Complex Device Driver) abgelegt. Describe software specific programs as outlined below. In addition, a basic software 26, an operating system 28 and a driver 30 (CDD Complex Device Driver) are stored in the electrically erasable memory 14.
Wie bereits im Stand der Technik ausgeführt war es bislang üblich, bei einer Aktualisierung der Software einer Applikation 20.x sämtliche Applikationen 20 zu stoppen, anschließend zu aktualisieren und dann wieder zu starten. Um sicherzustellen, dass bestimmte, insbesondere für Fahrzeugfunktionen wichtigeAs stated in the prior art, it has hitherto been customary to stop all applications 20 when updating the software of an application 20.x, then update it and then start it again. To ensure that certain, in particular for vehicle functions important
Funktionalitäten auch während des Flashvorgangs weiterhin zur Verfügung stehen, ist ein speziell ausgestalteter Flashbootloader 16 vorgesehen. Dieser befindet sich ebenfalls wie die anderen Applikationen 20 im elektrisch löschbaren Speicher 14. Der Flashbootloader 16 ist nun in der Lage, gezielt bestimmte Applikationen 20.x bzw. die zugehörige Software, zugehörige Daten etc. zu aktualisieren, während vorzugsweise besonders wichtige Applikation 20.1 , 20. n, weiterhin ausgeführt werden. Hierzu sind nun Verwaltungsdaten 33 im elektrisch löschbaren Speicher 14 angeordnet. Diese Verwaltungsdaten 33 versetzen den Flashbootloader 16 in die Lage, die Abhängigkeiten und die genaue Lage im Speicher 14 der auszuführenden Applikationen 20 zu erkennen. Hierzu sind beispielsweise in den Verwaltungsdaten 33 Funktionspointer hinterlegt, die auf die auszuführenden Applikationen 20 bzw. Software der Applikationen 20 zeigen.Functionalities continue to be available during the flash process, a specially designed Flashbootloader 16 is provided. This is also like the other applications 20 in electrically erasable memory 14. The flash boot loader 16 is now able to selectively update certain applications 20.x or the associated software, associated data, etc., while preferably particularly important application 20.1, 20 . n, continue to be executed. For this purpose, management data 33 are now arranged in the electrically erasable memory 14. This management data 33 enables the flash boot loader 16 to recognize the dependencies and the exact location in the memory 14 of the applications 20 to be executed. For this purpose, for example, 33 function pointers are stored in the administration data, which point to the applications 20 or software of the applications 20 to be executed.
Beispielsweise in Form von Tabellen sind diese Abhängigkeiten nach Erstellen des kompletten Programms bekannt und in den Verwaltungsdaten 33 abgebildet. Hierbei sind vorzugsweise für jede Applikation 20 zugehörige Verwaltungsdaten 33 auf dem elektrisch löschbaren Speicher 14 abgelegt. Diese Verwaltungsdaten 33 werden ebenfalls für die Basissoftware 26 und/oder das Betriebssystem 28 und/oder den Treiber 30 erzeugt und im elektrisch löschbaren Speicher 14 abgelegt. For example, in the form of tables, these dependencies are known after creation of the complete program and mapped in the management data 33. Here, 20 associated management data 33 are preferably stored on the electrically erasable memory 14 for each application. These management data 33 are also generated for the base software 26 and / or the operating system 28 and / or the driver 30 and stored in the electrically erasable memory 14.
Figur 2 zeigt exemplarisch den Ablauf der Aktualisierung einer zu FIG. 2 shows by way of example the course of the updating of a
aktualisierenden Applikation 20.x. Ein Master 23 für den Flash-Vorgang sendet in einem Schritt 101 einen entsprechenden Befehl zum Session-Wechsel an eine Applikation 20, vorzugsweise an eine solche Applikation 20, die üblicherweise die Diagnosekommunikation handhabt. Dieser Befehl bedingt einen Wechsel der Betriebsart. Die Applikation 20 startet den Flashbootloader 16, gegebenenfalls im Rahmen eines Neustarts, Schritt 103. Der Flashbootloader 16 empfängt den entsprechenden Neustartbefehl der Applikation 20. Der Flashbootloader 16 meldet in einem Schritt 105 seine Betriebsbereitschaft an den Master 23 zurück. Daraufhin wird eine Programmsequenz 106 ausgeführt. Bestandteil dieser Programmsequenz 106 ist die Kommunikation des Flashbootloaders 16 an weitere Applikation 20.1 , 20. n, diese weiter auszuführen, Schritt 107. Dies erfolgt unter Rückgriff auf die zugehörigen Verwaltungsdaten 33, in denen die entsprechenden Programmsequenzen wie beschrieben hinterlegt sind. Die Durchführung der Funktion der Applikation 20 durch den Flashbootloader 16 wird zyklisch durchgeführt. Außerdem werden gewisse nachfolgend weiter updating application 20.x. A master 23 for the flash process sends in a step 101 a corresponding session change command to an application 20, preferably to such an application 20, which usually handles the diagnostic communication. This command requires a change of the operating mode. The application 20 starts the flash boot loader 16, possibly as part of a restart, step 103. The flash boot loader 16 receives the corresponding restart command of the application 20. The flash boot loader 16 returns its operational readiness to the master 23 in a step 105. Thereafter, a program sequence 106 is executed. Part of this program sequence 106 is the communication of the Flashbootloaders 16 to another application 20.1, 20, 20 n, this further, step 107. This is done by resorting to the associated management data 33, in which the corresponding program sequences are stored as described. The execution of the function of the application 20 by the flash boot loader 16 is performed cyclically. In addition, certain will continue below
beschriebene Funktionen wie beispielsweise das Löschen des Speichers (Schrittdescribed functions such as clearing the memory (step
1 1 1 ), beschreiben des Speichers (Schritt 125) und weiteres ausgeführt. Während dieser Zeit müssen die Funktionen der Applikation 20 durch den Flashbootloader 16 weiter ausgeführt werden. 1 1 1), describe the memory (step 125) and further executed. While At this time, the functions of the application 20 must continue to be executed by the flash boot loader 16.
Gegebenenfalls erfolgt eine Rückmeldung der Applikation 20 an den Optionally, a response of the application 20 to the
Flashbootloader 16. Daraufhin sendet der Master 23 einen Lösch-Befehl an denFlashbootloader 16. The master 23 then sends a delete command to the
Flashbootloader 16, Schritt 109. Daraufhin führt der Flashbootloader das Flashbootloader 16, step 109. The Flashbootloader executes the
Löschen der zu aktualisierenden Applikation 20.x oder Teile der Applikation 20.x aus, Schritt 1 1 1 . Parallel hierzu wird Programmsequenz 1 13 weiterhin Delete the application 20.x or parts of the application 20.x to be updated, step 1 1 1. In parallel, program sequence 1 13 will continue
ausgeführt, welche die Ausführung der weiterhin auszuführenden Applikation 20.1 , 20. n wie bereits in Verbindung mit Programmsequenz 106 beschrieben beinhaltet unter entsprechender Kommunikation zwischen dem Flashbootloader 16 und der entsprechenden Applikation 20. As described in connection with program sequence 106, the execution of the application 20.1, 20 which is still to be executed includes execution of corresponding communication between the flash boot loader 16 and the corresponding application 20.
Nach erfolgreicher Löschung der zu aktualisierenden Applikation 20.x gibt der Flashbootloader 16 eine positive Rückmeldung an den Master 23 zurück. After successful deletion of the application 20.x to be updated, the flash boot loader 16 returns a positive feedback to the master 23.
Weiterhin wird eine Programmsequenz 1 19 ausgeführt, die die gewünschte Applikation 20 weiterhin ausführt, gegebenenfalls unter Kommunikation zwischen dem Flashbootloader 16 und der Applikation 20, Schritt 121 bzw. unter Rückgriff auf die entsprechenden Verwaltungsdaten 33. Anschließend übermittelt der Master 23 die einzuspeichernden Daten an den Flashbootloader 16, Schritt 123. Furthermore, a program sequence 1 19 is executed which continues to carry out the desired application 20, optionally with communication between the flash boot loader 16 and the application 20, step 121 or by resorting to the corresponding administration data 33. The master 23 then transmits the data to be stored to the Flashbootloader 16, step 123.
Der Flashbootloader 16 schreibt die übermittelten Daten für die zu The Flashbootloader 16 writes the transmitted data for the
aktualisierende Applikation 20.x in den elektrisch löschbaren Speicher 14, Schritt 125. Daraufhin schließt sich die nächste Programmsequenz 127 an, in der der Transfer der Funktion an die Applikation 20 erfolgt und weiterhin die updating application 20.x into the electrically erasable memory 14, step 125. This is followed by the next program sequence 127, in which the transfer of the function to the application 20 takes place and furthermore the
Applikationen 20 ausgeführt werden. Hierzu kommuniziert der FlashbootloaderApplications 20 are executed. For this the Flashbootloader communicates
16 mit der Applikation 20, Schritt 129. Gegebenenfalls erfolgt eine positive Rückmeldung der Applikation 20 an den Flashbootloader 16. Nach Empfang der Rückmeldung gibt der Flashbootloader 16 eine entsprechende positive 16 with the application 20, step 129. Optionally, the application 20 receives a positive response to the flash boot loader 16. After receiving the feedback, the flash boot loader 16 gives a corresponding positive
Rückmeldung an den Master 23, Schritt 131. Daraufhin veranlasst der Master 23 eine Änderung des Betriebsmodus, beispielsweise in den Default-Modus, SchrittFeedback to the master 23, step 131. Thereupon, the master 23 causes a change of the operating mode, for example, in the default mode, step
133. Hierzu sendet der Master 23 einen entsprechenden Befehl an den 133. For this purpose, the master 23 sends a corresponding command to the
Flashbootloader 16, Schritt 133. Daraufhin sendet der Flashbootloader 16 einen entsprechenden Befehl in Schritt 135 an die Applikationen 20, der einen Start der Applikationen 20 bewirkt. Daraufhin meldet die Applikation 20 ein Antwortsignal an den Master 23 zurück, Schritt 137. Weiterhin führt nun die Applikation 20 selbst die entsprechende Applikations-Software aus, Schritt 139. Bei dem Master 23 kann es sich beispielsweise um einen Diagnosetester, der in der Werkstatt zum Einsatz kommt, handeln. Alternativ könnten es jedoch auch weitere Steuergeräte sein, die beispielsweise drahtlos mit dem Steuergerät 10 Kontakt aufnehmen. Flash boot loader 16, step 133. Thereupon, the flash boot loader 16 sends a corresponding command in step 135 to the applications 20, which causes a start of the applications 20. Thereafter, the application 20 returns a response signal to the master 23, step 137. Furthermore, the application 20 itself executes the corresponding application software, step 139. The master 23 can be, for example, a diagnostic tester that is used in the workshop. Alternatively, however, it could also be other control devices that record wirelessly with the control unit 10, for example.
Das Ausführungsbeispiel gemäß Figur 3 verdeutlicht die bereits in Verbindung mit Figur 2 erläuterten Schritte. Darüber hinaus zeigt Figur 3 schematisch die verschiedenen Hardware-bzw. Software-Schichten. Eine entsprechende The exemplary embodiment according to FIG. 3 clarifies the steps already explained in connection with FIG. In addition, Figure 3 shows schematically the different hardware or. Software layers. A corresponding
Hardware 32 umfasst beispielsweise den Mikrocontroller 12 mit elektrisch löschbarem Speicher 14. Es läuft eine Basissoftware 26, über die die Ausführung unter Verwendung des Flashbootloaders 16 der Applikationen 20. n, 20.1 stattfindet, gegebenenfalls über den Treiber 30. Außerdem ist eine Hardware 32 includes, for example, the microcontroller 12 with electrically erasable memory 14. It runs a base software 26, via which the execution using the Flashbootloaders 16 of the applications 20. n, 20.1 takes place, optionally via the driver 30. In addition, a
Echtzeitumgebung 24 vorgesehen, auf der die Applikationen 20 in quasi Echtzeit betreiben werden können. Schematisch dargestellt sind weiterhin ein Real-time environment 24 is provided, on which the applications 20 can be operated in quasi real-time. Schematically represented are still a
Betriebssystem 28 sowie der Treiber 30, über den alternative Operating system 28 and the driver 30, via the alternative
Ansteuerungsmöglichkeiten als Back-up möglich wären. Die durchgehenden Pfeile 35 symbolisieren, welche der gezeigten Komponenten ausgeführt werden. So bewirkt der Flashbootloader 16, dass zum einen die Basissoftware 26 ausgeführt wird. Bei der Basissoftware 26 müssen nicht alle Anteile ausgeführt werden. Gegebenenfalls könnte über die Verwaltungsdaten 33 gegebenenfalls auch gesteuert werden, dass nur ein Teil oder Teile der Basissoftware 26 ausgeführt werden. Control options as back-up would be possible. The continuous arrows 35 symbolize which of the components shown are executed. Thus, the flash boot loader 16 causes the basic software 26 to be executed. For the base software 26, not all shares need to be executed. If appropriate, it may also be possible via the management data 33 to control that only a part or parts of the basic software 26 are executed.
Weiterhin wird auch die Applikation 20.1 und die Applikation 20. n ausgeführt. Dies erfolgt unter Rückgriff auf die in Figur 1 angedeuteten Verwaltungsdaten 33, die den entsprechenden Ablauf der Ausführung der entsprechenden Furthermore, the application 20.1 and the application 20.n are also executed. This is done by resorting to the indicated in Figure 1 management data 33, the corresponding sequence of execution of the corresponding
Programmteile dem Flashbootloader 16 zur Verfügung stellen. Im Make program parts available to the Flashbootloader 16. in the
Ausführungsbeispiel gemäß Figur 3 soll die Applikation 20.x aktualisiert werden. Während der Aktualisierung jedoch sollen die Applikationen 20.1 und 20. n weiterhin ausgeführt werden. Die Aktualisierung ist in dem unteren Bild der FigurEmbodiment according to Figure 3, the application 20.x is to be updated. During the update, however, applications 20.1 and 20.n should continue to run. The update is in the lower image of the figure
3 gezeigt über die gestrichelten Pfeile 37. Wie bereits in Verbindung mit Figur 2 beschrieben erfolgt die Aktualisierung der Applikation 20.x und zumindest teilweise Durchführung der Kommunikation mit dem Master 23 durch den Flashbootloader 16. Der Flashbootloader 16 steuert weiterhin die Aktualisierung der Applikation 20.x. Der Flashbootloader 16 übernimmt weiterhin die As already described in connection with FIG. 2, the updating of the application 20.x and at least partial execution of the communication with the master 23 by the flash boot loader 16 takes place. The flash boot loader 16 furthermore controls the updating of the application 20. x. The Flashbootloader 16 continues to take over the
Ausführung der während der Aktualisierung zur Verfügung stehenden Execution of the available during the update
Applikationen 20.1 , 20. n. Figur 4 zeigt beispielhaft den Aufbau und die Belegung des elektrisch löschbaren Speichers 14. In diesem sind beispielhaft vier Partitionen 40, 41 , 42, 43 vorgesehen, mehrere Blöcke 45 befinden sich in einer Partition. Ein Block 45 ist die kleinste, löschbare Einheit des elektrisch löschbaren Speichers 14. AufApplications 20.1, 20. n. FIG. 4 shows, by way of example, the structure and assignment of the electrically erasable memory 14. In this example, four partitions 40, 41, 42, 43 are provided, a plurality of blocks 45 are located in one partition. A block 45 is the smallest erasable unit of the electrically erasable memory 14. Auf
Blöcke 45 einer Partition 40-43 kann nicht zugegriffen werden (Code ausführen, Daten lesen), wenn währenddessen innerhalb dieser Partition 40-43 eine Löschoder Schreib-Operation ausgeführt wird. Dies hat zur Folge, dass eine sinnvolle Aufteilung der Applikationen 20 mit zugehörigen Verwaltungsdaten 33 auf die verfügbaren Partitionen 40-43 vorgenommen werden muss, um sicherzustellen, dass kein Code ausgeführt wird, der in einer der zu programmierende bzw. zu aktualisierenden Partitionen 40-43 liegt. Gerade die Austauschbarkeit einzelner Softwareanteile bzw. Applikationen 20, während andere Applikationen 20 ausgeführt werden, hängt von der Verteilung der Softwareanteile bzw. Blocks 45 of a partition 40-43 can not be accessed (execute code, read data) if during this partition 40-43 an erase or write operation is executed. This has the consequence that a meaningful division of the applications 20 with associated management data 33 must be made to the available partitions 40-43 to ensure that no code is executed in one of the partitions 40-43 to be programmed or updated lies. Exchangeability of individual software components or applications 20, while other applications 20 are executed, depends on the distribution of the software components or applications.
Applikationen 20 auf die einzelnen Partitionen 40-43 ab. Softwareanteile bzw.Applications 20 on the individual partitions 40-43. Software shares or
Applikationen 20, die in gleichen Partitionen 40-43 liegen, können nicht ausgeführt werden, während in dieser Partition eine Aktualisierung ausgeführt wird. Mit Blick auf Figur 3 kann somit eine Aktualisierung der Applikation 20.x unter gleichzeitiger Ausführung der weiteren Applikationen 20 1 , 20. n erfolgen, da diese in unterschiedlichen Partitionen 40,41 angeordnet sind. Applications 20 residing in equal partitions 40-43 can not be executed while an update is performed in that partition. With reference to FIG. 3, an update of the application 20.x can thus be carried out with simultaneous execution of the further applications 20 1, 20. N, since these are arranged in different partitions 40, 41.
Beispielhaft könnten auf den Partitionen 40,41 auch zwei Flashbootloader 16, 16.1 , 16.2, vorzugsweise auf unterschiedlichen Partitionen, liegen. Alternativ zur Variante mit zwei Flashbootloadern 16.1 , 16.2 wäre jedoch das Vorsehen lediglich eines einzigen Flashbootloaders 16 gleichermaßen möglich. DerBy way of example, two flash bootloaders 16, 16.1, 16.2, preferably on different partitions, could also be located on the partitions 40, 41. As an alternative to the variant with two Flashbootloadern 16.1, 16.2, however, the provision of only a single Flashbootloaders 16 would be equally possible. Of the
Flashbootloader 16 könnte auch außerhalb des elektrisch löschbaren Speichers 14 angeordnet sein. Flash boot loader 16 could also be located outside of electrically erasable memory 14.
Der Flashbootloader 16 ist wie beschrieben in der Lage, die Anforderungen betreffend Diagnosekommunikation bzw. Kommunikation mit dem Master 23 und/oder den Anwendungen 20 zu übernehmen. Er ist wie beschrieben in der Lage, eine Löschoperation zu starten oder Daten zu schreiben. Er ist weiterhin in der Lage, Applikationen 20 zu stoppen, den zu ersetzenden Softwareanteil bzw. die Applikation 20 zu ersetzen (löschen, schreiben) und anschließend wieder zu starten. Weiterhin ist der Flashbootloader 16 in der Lage, weitere ApplikationenAs described, the flash boot loader 16 is capable of handling the requirements for diagnostic communication with the master 23 and / or the applications 20. As described, it is capable of starting a delete operation or writing data. He is also able to stop applications 20 to replace the software part to be replaced or the application 20 (delete, write) and then start again. Furthermore, the Flashbootloader 16 is capable of other applications
20.1 , 20. n auszuführen. Dies erfolgt wie beschrieben unter Rückgriff auf die jeweiligen Verwaltungsdaten 33, um die richtige Abfolge bzw. Programmteile der Applikationen 20 zu verwenden, was ansonsten unter Umständen durch das Betriebssystem 28 verwaltet würde. 20.1, 20. n execute. This is done as described with reference to the respective administrative data 33 to the correct sequence or program parts of the Applications 20 to use, which might otherwise be managed by the operating system 28.
Bevorzugte Verwendung findet das Verfahren mit der zugehörigen Vorrichtung bei der Aktualisierung von Software eines Steuergeräts insbesondere fürThe method with the associated device preferably finds application in the updating of software of a control device, in particular for
Kraftfahrzeuge, wobei sicherzustellen ist, dass bestimmte Applikationen 20 während der Aktualisierung der Software bzw. weitere Applikationen weiterhin ausgeführt werden. Diese Aktualisierung könnte entweder über einen Motor vehicles, while ensuring that certain applications 20 continue to run during the update of the software or other applications. This update could either be via a
Diagnosetester beispielsweise in der Werkstatt oder aber auch drahtlos durch eine fernsteuernde Funktion aus der Ferne als Master 23 initiiert werden. Diagnostic tester example, in the workshop or wirelessly be initiated by a remote control function remotely as the master 23.
Claims
Applications Claiming Priority (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102016200707 | 2016-01-20 | ||
| DE102016200707.6 | 2016-01-20 | ||
| DE102016201769.1 | 2016-02-05 | ||
| DE102016201769.1A DE102016201769A1 (en) | 2016-01-20 | 2016-02-05 | Method for updating software of a control unit, preferably for a motor vehicle |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2017125181A1 true WO2017125181A1 (en) | 2017-07-27 |
Family
ID=59256157
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/EP2016/077936 Ceased WO2017125181A1 (en) | 2016-01-20 | 2016-11-17 | Method for updating control device software, preferably for a motor vehicle |
Country Status (2)
| Country | Link |
|---|---|
| DE (1) | DE102016201769A1 (en) |
| WO (1) | WO2017125181A1 (en) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108279916A (en) * | 2017-12-28 | 2018-07-13 | 宁德时代新能源科技股份有限公司 | Electronic control unit program updating method and device |
| CN112559002A (en) * | 2019-09-26 | 2021-03-26 | 上海汽车集团股份有限公司 | Vehicle application updating method and device and storage medium |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107977220A (en) * | 2017-12-04 | 2018-05-01 | 清华大学 | A kind of method, apparatus and system for writing with a brush dipped in Chinese ink application program |
| CN110457058A (en) * | 2019-08-09 | 2019-11-15 | 北京万东医疗科技股份有限公司 | Control node online upgrade method, device, host computer, system and electronic equipment |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2005004160A2 (en) | 2003-06-24 | 2005-01-13 | Robert Bosch Gmbh | Method for updating software of an electronic control device by flash programming via a serial interface and corresponding automatic state machine |
| US20090125897A1 (en) * | 2007-11-14 | 2009-05-14 | Continental Teves, Inc. | Systems and Methods for Updating Device Software |
| US20140025870A1 (en) * | 2011-02-09 | 2014-01-23 | Continental Automotive Gmbh | Computer reprogramming method, data storage medium and motor vehicle computer |
-
2016
- 2016-02-05 DE DE102016201769.1A patent/DE102016201769A1/en not_active Withdrawn
- 2016-11-17 WO PCT/EP2016/077936 patent/WO2017125181A1/en not_active Ceased
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2005004160A2 (en) | 2003-06-24 | 2005-01-13 | Robert Bosch Gmbh | Method for updating software of an electronic control device by flash programming via a serial interface and corresponding automatic state machine |
| US20090125897A1 (en) * | 2007-11-14 | 2009-05-14 | Continental Teves, Inc. | Systems and Methods for Updating Device Software |
| US20140025870A1 (en) * | 2011-02-09 | 2014-01-23 | Continental Automotive Gmbh | Computer reprogramming method, data storage medium and motor vehicle computer |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN108279916A (en) * | 2017-12-28 | 2018-07-13 | 宁德时代新能源科技股份有限公司 | Electronic control unit program updating method and device |
| CN112559002A (en) * | 2019-09-26 | 2021-03-26 | 上海汽车集团股份有限公司 | Vehicle application updating method and device and storage medium |
| CN112559002B (en) * | 2019-09-26 | 2025-02-25 | 上海汽车集团股份有限公司 | Vehicle application updating method, device and storage medium |
Also Published As
| Publication number | Publication date |
|---|---|
| DE102016201769A1 (en) | 2017-07-20 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE10027006B4 (en) | System for controlling the operation of a motor vehicle and a method for starting such a system | |
| DE19964013B4 (en) | Method and device for controlling operations in a vehicle | |
| DE102019109672A1 (en) | CANCELLATION AFTER PARTIAL FAILURE IN MULTIPLE ELECTRONIC CONTROL UNITS BY OVER THE AIR UPDATE | |
| DE19836748C1 (en) | Method for applying control data of an electronic motor vehicle control unit | |
| EP3128383B1 (en) | Field device | |
| WO2017125181A1 (en) | Method for updating control device software, preferably for a motor vehicle | |
| EP1861754A1 (en) | Method and device for configuring a control device and corresponding control device | |
| EP0997347A2 (en) | Procedure and device for programming a vehicle control apparatus | |
| DE19931184A1 (en) | Altering controller memory contents involves writing new data that is worthy of security into different memory area before transferring to original memory area contg. replaced data | |
| EP3353650B1 (en) | System and method for distributing and/or updating software in interconnected control devices of a vehicle | |
| WO2017125182A1 (en) | Method for updating control device software, preferably for a motor vehicle | |
| EP2367084A1 (en) | Method for the configuration of a control device of an industrial automation device and components for an industrial automation device | |
| WO2017178211A1 (en) | Method for operating a control device for a vehicle, control device, operating system, motor vehicle | |
| DE102010039021B4 (en) | Method for reconfiguration of software parameters in a microcontroller as well as microcontroller and control unit | |
| WO2020099023A2 (en) | Control device for a vehicle component, kit comprising a control device and a testing device, vehicle, method for updating a control device, and computer-readable storage medium | |
| EP0664387B1 (en) | Process to change the working mode of a control device in vehicles | |
| EP2734919B1 (en) | Control unit for a vehicle, programming device and programming system | |
| DE112022005984T5 (en) | UPDATE MANAGEMENT SYSTEM | |
| EP1698952B1 (en) | Method and apparatus for inidvidual configuration parameter backup | |
| DE102007059355A1 (en) | Method for operating a control unit and control unit | |
| DE102012218665B4 (en) | Application system for control units | |
| EP2734922B1 (en) | Control unit for a vehicle, programming device and programming system | |
| DE102023208799B3 (en) | Method for operating a communication interface for a vehicle development test station system for exchanging data with respect to a software product to be tested for a vehicle to be developed, communication interface and vehicle development test station system | |
| EP1967920A1 (en) | Softwareupdate method for FPGA-based automation systems | |
| DE102023209901A1 (en) | Method for performing an update of a control unit in a vehicle |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 16797891 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 16797891 Country of ref document: EP Kind code of ref document: A1 |