DE102014204222A1 - Verfahren und vorrichtung für die umprogrammierung mehrerer fahrzeugsoftwaremodule - Google Patents

Verfahren und vorrichtung für die umprogrammierung mehrerer fahrzeugsoftwaremodule Download PDF

Info

Publication number
DE102014204222A1
DE102014204222A1 DE201410204222 DE102014204222A DE102014204222A1 DE 102014204222 A1 DE102014204222 A1 DE 102014204222A1 DE 201410204222 DE201410204222 DE 201410204222 DE 102014204222 A DE102014204222 A DE 102014204222A DE 102014204222 A1 DE102014204222 A1 DE 102014204222A1
Authority
DE
Germany
Prior art keywords
vehicle
module
updated
version
processor
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
DE201410204222
Other languages
English (en)
Inventor
Paul Anthon Mueller
MJ Jay Throop
Brian David Tilman
April Deneane Johnson
Gregory William Farrey
Jason Michael Miller
John Dolinsky
Chuck Henry Nagi
Thomas Eric Svenson
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.)
Ford Global Technologies LLC
Original Assignee
Ford Global Technologies LLC
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 Ford Global Technologies LLC filed Critical Ford Global Technologies LLC
Publication of DE102014204222A1 publication Critical patent/DE102014204222A1/de
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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/66Updates of program code stored in read-only memory [ROM]

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)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

Ein System weist einen Prozessor auf, der zum drahtlosen Empfangen von Aktualisierungsanforderungen von mehreren Fahrzeugen konfiguriert ist. Der Prozessor ist auch konfiguriert, für jede Anforderung zu bestimmen, ob Fahrzeugmodule aktualisiert werden müssen. Ferner ist der Prozessor auch zum Abrufen einer aktualisierten Version und Senden der aktualisierten Version an ein Fahrzeug zum Umprogrammieren für jedes Modul, das aktualisiert werden muss, konfiguriert. Der Prozessor ist außerdem zum Empfangen einer Bestätigung für jedes Modul, das umprogrammiert wurde, und Aktualisieren einer Fahrzeugkonfiguration mit einer Versionskennung konfiguriert, welcher der aktualisierten Version für jedes umprogrammierte Modul entspricht.

Description

  • Die Ausführungsbeispiele betreffen im Allgemeinen ein Verfahren und eine Vorrichtung für die Umprogrammierung mehrerer Fahrzeugsoftwaremodule.
  • Heutzutage weisen viele Fahrzeuge komplexe Rechensysteme als Teil ihrer allgemeinen Gestaltung auf. Angefangen bei Infotainment-Systemen bis hin zur Antriebsstrangsteuerung bilden Computersoftware und -hardware einen Bestandteil der Fahrzeuginfrastruktur.
  • Wie viele andere Computerkomponenten (Hardware und Software) können diese Systeme oftmals aus Aktualisierungen Nutzen ziehen. In vielen Fällen erfordert dies einen Flash des Speichers, der eine Überschreibung von Kernsoftware auf einem nichtflüchtigen Speicher ist, der typischerweise nicht anderweitig geändert werden kann. Da die Software oftmals kritisch ist, müssen diese Aktualisierungen ad hoc durchgeführt werden, wobei oft relativ komplizierte Prozesse (im Vergleich zu einfachen Softwareinstallationsverfahren) an der Umprogrammierung eines Speichers beteiligt sind.
  • In vielen Fällen erfordert die Umprogrammierung bestimmter Komponenten eine Fahrt zum Händler, um sicherzustellen, dass die Aktualisierung ordnungsgemäß durchgeführt wird. In anderen Fällen können dem Benutzer eine Reihe von Anweisungen und Schritten zur Verfügung gestellt werden, um die Umprogrammierung ordnungsgemäß durchzuführen. Da jedoch Softwareaktualisierungen häufig sein können, kann es für einen Benutzer recht mühselig sein, sein System vollkommen aktualisiert zu halten. Dies gilt insbesondere dann, wenn ein Fuhrpark betroffen ist.
  • Die US-Anmeldung mit Veröffentlichungsnummer 2005/0216902 betrifft im Allgemeinen ein System und ein Verfahren zur Verwaltung einer Softwarekonfigurationsaktualisierung eines Fahrzeugs. Ein erstes Softwaremodul wird identifiziert und Fahrzeugkonfigurationsdaten, die für eine erste Fahrzeugsoftwarekonfiguration stehen, werden abgerufen. An einem Callcenter wird bestimmt, ob das erste Softwaremodul mit der ersten Fahrzeugsoftwarekonfiguration kompatibel ist. Eine zweite Fahrzeugsoftwarekonfiguration wird von dem Callcenter über ein Funknetz basierend auf der Bestimmung an eine telematische Einheit gesendet. Ein computernutzbares Medium mit geeignetem Computerprogrammcode wird zur Verwaltung der Softwarekonfigurationsaktualisierung des Fahrzeugs verwendet,
  • Die US-Anmeldung mit Veröffentlichungsnummer 2013/0031540, eingereicht am 26. Juli 2011, betrifft im Allgemeinen ein computerimplementiertes Verfahren, welches des Bestimmen, dass eine Verbindung zu einem Aktualisierungsserver hergestellt werden soll, beinhaltet. Das Verfahren beinhaltet auch das Herstellen einer drahtlosen Verbindung mit dem Aktualisierungsserver. Das Verfahren beinhaltet ferner das Senden mindestens einer VIN-Nummer an den Aktualisierungsserver und das Herunterladen einer oder mehrerer Modulaktualisierungen in Übereinstimmung mit der gesendeten VIN-Nummer. Ferner beinhaltet das Verfahren das Überprüfen einer oder mehrerer heruntergeladener Aktualisierungen. Das Verfahren beinhaltet ferner das Programmieren eines oder mehrerer Module, denen die eine oder mehreren Aktualisierungen entsprechen. Außerdem beinhaltet das Verfahren das Überprüfen der Funktionalität jedes Moduls, das geflasht wurde.
  • Die US-Anmeldung mit Einreichungsnummer 13/206,615, eingereicht am 7. August 2011, betrifft im Allgemeinen ein computerimplementiertes Verfahren, welches das Empfangen eines Wiederherstellungsbefehls zum Wiederherstellen des Systemzustandes eines Fahrzeugrechensystems (VCS) beinhaltet. Das Verfahren beinhaltet ferner das Wiederherstellen eines Systembasiszustandes in einen bekannten Funktionszustand und das Erhalten einer Liste von Anwendungen, die vorher auf dem VCS installiert wurden. Das Verfahren beinhaltet auch für jede vorher auf dem VCS installierte Anwendung das Finden einer Version der Anwendung, die mit dem wiederhergestellten Systembasiszustand kompatibel ist. Ferner beinhaltet das Verfahren das Installieren der Version jeder Anwendung, die mit dem wiederhergestellten Systembasiszustand kompatibel ist.
  • In einem ersten Ausführungsbeispiel weist ein System einen Prozessor auf, der zum drahtlosen Empfangen von Aktualisierungsanforderungen von mehreren Fahrzeugen konfiguriert ist. Der Prozessor ist auch konfiguriert, für jede Anforderung zu bestimmen, ob Fahrzeugmodule aktualisiert werden müssen. Ferner ist der Prozessor auch zum Abrufen einer aktualisierten Version und Senden der aktualisierten Version an ein Fahrzeug zum Umprogrammieren für jedes Modul, das aktualisiert werden muss, konfiguriert. Der Prozessor ist außerdem zum Empfangen einer Bestätigung für jedes Modul, das umprogrammiert wurde, und Aktualisieren einer Fahrzeugkonfiguration mit einer Versionskennung konfiguriert, welcher der aktualisierten Version für jedes umprogrammierte Modul entspricht.
  • In einem anderen Ausführungsbeispiel beinhaltet ein computerimplementiertes Verfahren das drahtlose Empfangen von Aktualisierungsanforderungen von mehreren Fahrzeugen. Das beispielhafte Verfahren beinhaltet auch, für jede Anforderung, das Bestimmen, ob Fahrzeugmodule aktualisiert werden müssen. Das Verfahren beinhaltet außerdem das Abrufen einer aktualisierten Version und Senden der aktualisierten Version an ein Fahrzeug zum Umprogrammieren für jedes Modul, das aktualisiert werden muss. Das Verfahren beinhaltet ferner das Empfangen einer Bestätigung für jedes Modul, das umprogrammiert wurde, und Aktualisieren einer Fahrzeugkonfiguration mit einer Versionskennung, welcher der aktualisierten Version für jedes umprogrammierte Modul entspricht.
  • In einem dritten Ausführungsbeispiel speichert ein nichtflüchtiges computerlesbares Speichermedium Anweisungen, die, wenn sie von einem Prozessor ausgeführt werden, bewirken, dass der Prozessor ein Verfahren ausführt, welches das drahtlose Empfangen von Aktualisierungsanforderungen von mehreren Fahrzeugen beinhaltet. Das beispielhafte Verfahren beinhaltet auch für jede Anforderung, das Bestimmen, ob Fahrzeugmodule aktualisiert werden müssen. Das Verfahren beinhaltet außerdem das Abrufen einer aktualisierten Version und Senden der aktualisierten Version an ein Fahrzeug zum Umprogrammieren, für jedes Modul, das aktualisiert werden muss. Das Verfahren beinhaltet ferner das Empfangen einer Bestätigung für jedes Modul, das umprogrammiert wurde, und Aktualisieren einer Fahrzeugkonfiguration mit einer Versionskennung, welcher der aktualisierten Version für jedes umprogrammierte Modul entspricht.
  • Es zeigen: 1 ein beispielhaftes Fahrzeugrechensystem;
  • 2 einen beispielhaften Prozess zum Aktualisieren mehrere Module eines einzigen Fahrzeugs; und
  • 3 einen beispielhaften Prozess zum gleichzeitigen Aktualisieren mehrere Module.
  • Ausführliche Ausführungsformen der vorliegenden Offenbarung sind hierin vorschriftsmäßig offenbart; jedoch muss man verstehen, dass die offenbarten Ausführungsformen die Erfindung rein beispielhaft darstellen und in verschiedenen und alternativen Formen ausgeführt werden können. Die Figuren sind nicht unbedingt maßstabsgetreu, wobei einige Merkmale übertrieben oder minimiert dargestellt sein können, um Details bestimmter Komponenten aufzuzeigen. Daher sind spezifische hierin offenbarte strukturelle und funktionelle Details nicht als einschränkend auszulegen, sondern nur als repräsentative Grundlage, um einen Fachmann verschiedene Anwendungen der vorliegenden Erfindung zu lehren.
  • 1 stellt eine beispielhafte Blocktopologie für ein fahrzeugbasiertes Rechensystem 1 (VCS) für ein Fahrzeug 31 dar. Ein Beispiel eines solchen fahrzeugbasierten Rechensystems 1 ist das SYNC-System, das von der THE FORD MOTOR COMPANY hergestellt wird. Ein Fahrzeug, das mit einem fahrzeugbasierten Rechensystem bereitgestellt ist, kann eine visuelle Frontend-Oberfläche 4 enthalten, die sich in dem Fahrzeug befindet. Der Benutzer kann auch mit der Oberfläche interagieren, wenn diese zum Beispiel mit einem berührungsempfindlichen Bildschirm versehen ist. In einem anderen Ausführungsbeispiel erfolgt die Interaktion durch Drücken von Tasten, hörbare Sprache und Sprachsynthese.
  • In Ausführungsbeispiel 1, das in 1 dargestellt ist, steuert ein Prozessor 3 mindestens einen Teil des Betriebs des fahrzeugbasierten Rechensystems. Der in dem Fahrzeug bereitgestellte Prozessor ermöglicht die bordseitige Verarbeitung von Befehlen und Routinen. Ferner ist der Prozessor sowohl mit einem nichtflüchtigen 5 als auch einem flüchtigen Speicher 7 verbunden. In diesem Ausführungsbeispiel ist der nichtflüchtige Speicher ein wahlfreier Zugriffspeicher (RAM) und der flüchtige Speicher ein Festplattenlaufwerk (HDD) oder ein Flash-Speicher.
  • Der Prozessor ist auch mit einer Anzahl unterschiedlicher Eingabeelemente bereitgestellt, mit denen sich der Benutzer mit dem Prozessor verbinden kann. In diesem Ausführungsbeispiel sind ein Mikrofon 29, ein Hilfseingang 25 (für den Eingang 33), ein USB-Eingang 23, ein GPS-Eingang 24 und ein BLUETOOTH-Eingang 15 bereitgestellt. Ein Eingabewahlschalter 51 ist ebenfalls bereitgestellt, damit ein Benutzer zwischen verschiedenen Eingabeelementen wechseln kann. Die Eingabe sowohl in das Mikrofon als auch den Hilfsstecker wird von einem Wandler 27 von analog in digital umgewandelt, bevor sie an den Prozessor geleitet wird. Wenngleich nicht dargestellt, können zahlreiche der Fahrzeugkomponenten und Hilfskomponenten, die mit dem VCS verbunden sind, ein Fahrzeugnetzwerk (wie beispielsweise, jedoch ohne Beschränkung auf einen CAN-Bus) verwenden, um Daten an das und von dem VCS (oder Komponenten davon) zu leiten.
  • Ausgabeelemente des Systems können eine visuelle Anzeige 4 und einen Lautsprecher 13 oder eine Stereosystemausgabe einschließen, sind jedoch nicht darauf beschränkt. Der Lautsprecher ist mit einem Verstärker 1 verbunden und empfängt sein Signal von dem Prozessor 3 durch einen Digital-Analog-Wandler 9. Die Ausgabe kann auch an eine rechnerferne BLUETOOH-Vorrichtung wie PND 54 oder eine USB-Vorrichtung wie eine Fahrzeugnavigationsvorrichtung 60 entlang der bidirektionalen Datenströme erfolgen, die bei 19 bzw. 21 dargestellt sind.
  • In einem Ausführungsbeispiel verwendet das System 1 einen BLUETOOTH-Sendeempfänger 15, um mit einem Mobilgerät 53 eines Benutzers (z. B. einem Mobiltelefon, Smartphone, PDA oder anderen Vorrichtung mit einer drahtlosen rechnerfernen Netzwerkkonnektivität) zu kommunizieren 17. Das Mobilgerät kann dann verwendet werden, um mit einem Netzwerk 61 außerhalb des Fahrzeugs 31 zum Beispiel durch die Verbindung 55 mit einem Mobilfunkturm 57 zu kommunizieren 59. In einigen Ausführungsformen kann der Turm ein WLAN-Zugriffspunkt sein.
  • Eine beispielhafte Verbindung zwischen dem Mobilgerät und dem BLUETOOTH-Sendeempfänger ist durch das Signal 14 dargestellt.
  • Die Kopplung eines Mobilgeräts 53 und des BLUETOOTH-Sendeempfängers kann durch eine Taste 52 oder ein ähnliches Eingabeelement befohlen werden. Dementsprechend wird der CPU befohlen, dass der bordseitige BLUETOOTH-Sendeempfänger mit einem BLUETOOTH-Sendeempfänger in einem Mobilgerät gekoppelt wird.
  • Die Daten können zwischen der CPU 3 und dem Netzwerk 61 unter Verwendung beispielweise eines Datenplans, Date Over Voice oder DTMF-Töne, die mit einem Mobilgerät 53 assoziiert sind, mitgeteilt werden. Als Alternative kann es wünschenswert sein, ein bordseitiges Modem 63 mit Antenne 18 aufzunehmen, um Daten zwischen der CPU 3 und dem Netzwerk 61 über das Sprachband zu übertragen 16. Das Mobilgerät 53 kann dann zum Kommunizieren 59 mit einem Netzwerk 61 außerhalb des Fahrzeugs 31 durch zum Beispiel die Verbindung 55 mit einem Mobilfunkturm 57 verwendet werden. In einigen Ausführungsformen kann das Modem 63 eine Verbindung 20 mit dem Turm 57 herstellen, um mit dem Netzwerk 61 zu kommunizieren. Als nicht einschränkendes Beispiel kann das Modem 63 ein USB-Mobilfunkmodem sein und die Verbindung 20 kann eine Mobilfunkverbindung sein.
  • In einem Ausführungsbeispiel ist der Prozessor mit einem Betriebssystem bereitgestellt, das eine API aufweist, um mit der Modemanwendungssoftware zu kommunizieren. Die Modemanwendungssoftware kann auf ein eingebettetes Modul oder Firmware an dem BLUETOOTH-Sendeempfänger zugreifen, um eine drahtlose Verbindung mit einem rechnerfernen BLUETOOTH-Sendeempfänger (wie dem in einem Mobilgerät) herzustellen. Bluetooth ist Teil der Protokolle IEEE 802 PAN (Personal Area Network). Die IEEE 802 LAN (Local Area Network)-Protokolle schließen WiFi ein und haben eine bedeutende übergreifende Funktionalität mit IEEE 802 PAN. Beide sind für die drahtlose Kommunikation in einem Fahrzeug geeignet. Ein anderes Kommunikationsmittel, das in diesem Kontext verwendet werden kann, ist die optische Freiraumkommunikation (wie IrDA) und nicht genormte Verbraucher-IR-Protokolle.
  • In einer anderen Ausführungsform weist das Mobilgerät 53 ein Modem für die Sprachbrand- oder Breitbanddatenkommunikation auf. In der Ausführungsform mit Data-Over-Voice kann eine als Frequenzmultiplexverfahren bekannte Technik implementiert werden, wenn der Eigentümer des Mobilgeräts über das Gerät sprechen kann, während Daten übertragen werden. Zu anderen Zeitpunkten, wenn der Eigentümer das Gerät nicht benutzt, kann bei der Datenübertragung die gesamte Bandbreite (300 Hz bis 3,4 kHz in einem Beispiel) verwendet werden. Wenngleich das Frequenzmultiplexverfahren für die analoge Mobilkommunikation zwischen dem Fahrzeug und dem Internet üblich sein mag und noch immer angewendet wird, wurde es größtenteils durch Hybridformen mit Code Domain Multiple Access (CDMA), Time Domain Multiple Access (TDMA), Space-Domain Multiple Access (SDMA) für die digitale Mobilkommunikation ersetzt. Hierbei handelt es sich um Normen, die mit ITU IMT-2000 (3G) konform sind und Datenraten von bis zu 2 mbs für ortsfeste oder gehende Benutzer und 385 kbs für Benutzer in einem sich bewegenden Fahrzeug bieten. 3G-Standards werden derzeit durch IMT-Advanced (4G) ersetzt, die 100 mbs für Benutzer in einem Fahrzeug und 1 gbs für ortsfeste Benutzer bieten. Wenn der Benutzer einen Datenplan hat, der mit dem Mobilgerät assoziiert ist, kann der Datenplan eine Breitbandübertragung ermöglichen und das System könnte eine viel breitere Bandbreite nutzen (und somit die Datenübertragung beschleunigen). In noch einer anderen Ausführungsform ist das Mobilgerät 53 durch eine Mobilkommunikationsvorrichtung (nicht dargestellt) ersetzt, die in dem Fahrzeug 31 installiert ist. In noch einer anderen Ausführungsform kann das ND 53 ein Gerät mit Wireless Local Area Netzwork (WLAN) sein, das zum Beispiel (und ohne Einschränkung) über ein 802.11g-Netzwerk (d. h. WiFi) oder ein WiMax-Netzwerk kommunizieren kann.
  • In einer Ausführungsform können ankommende Daten durch das Mobilgerät über Data-Over-Voice oder einen Datenplan durch den bordseitigen BLUETOOTH-Sendeempfänger und in den internen Prozessor 3 des Fahrzeugs geleitet werden. Im Falle bestimmter temporärer Daten können die Daten beispielsweise auf dem HDD oder einem anderen Speichermedium 7 gespeichert werden, bis die Daten nicht mehr benötigt werden.
  • Zusätzliche Quellen, die mit dem Fahrzeug sein können, schließen eine persönliche Navigationsvorrichtung 54 ein, die zum Beispiel einen USB-Anschluss 56 und/oder eine Antenne 58 aufweist, eine Fahrzeugnavigationsvorrichtung 60, die eine USB 62 oder anderen Anschluss aufweist, eine bordseitige GPS-Vorrichtung 24 oder ein rechnerfernes Navigationssystem (nicht dargestellt) mit Konnektivität zu dem Netzwerk 61 ein. USB ist ein Typ eines seriellen Netzwerkprotokolls. Die seriellen Protokolle laut IEEE 1394 (Firewire), EIA (Electronics Industry Association), IEEE 1284 (Centronics Port), S/PDIF (Sony/Philips Digital Interconnect Format) und USB-IF (USB Implementers Forum) bilden das Grundgerüst der seriellen Standards von Gerät zu Gerät. Die meisten Protokolle können entweder für die elektrische oder die optische Kommunikation implementiert sein.
  • Ferner kann die CPU mit verschiedenen anderen Hilfsvorrichtungen 65 verbunden sein. Diese Vorrichtungen können durch eine drahtlose 67 oder eine verdrahtete 69 Verbindung verbunden sein. Die Hilfsvorrichtung 65 kann persönliche Mediaplayer, drahtlose Gesundheitsvorrichtungen, tragbare Computer und dergleichen einschließen, ohne jedoch darauf beschränkt zu sein.
  • Außerdem oder alternativ könnte die CPU mit einem fahrzeugbasierten drahtlosen Router 73 verbunden sein, der zum Beispiel einen Sendeempfänger für WiFi 71 verwendet. Dadurch könnte die CPU mit rechnerfernen Netzwerken innerhalb der Reichweite des lokalen Routers 73 verbunden werden.
  • Neben beispielhaften Prozessen, die von einem Fahrzeugrechensystem ausgeführt werden, das sich in einem Fahrzeug befindet, können die beispielhaften Prozesse von einem Rechensystem ausgeführt werden, das mit einem Fahrzeugrechensystem verbunden ist. Ein solches System kann eine drahtlose Vorrichtung (z. B. und ohne Einschränkung ein Mobiltelefon) oder ein rechnerfernes Rechensystem (z. B. und ohne Einschränkung einen Server), der durch die drahtlose Vorrichtung verbunden ist, einschließen, ist jedoch nicht darauf beschränkt. Kollektiv können solche Systeme als fahrzeugassoziierte Rechensysteme (VACS) bezeichnet werden. In bestimmten Ausführungsformen können bestimmte Komponenten des VACS in Abhängigkeit der jeweiligen Implementierung des Systems bestimmte Teile eines Prozesses ausführen. Wenn ein Prozess zum Beispiel und ohne Einschränkung einen Schritt des Sendens oder Empfangens von Informationen mit einer gekoppelten drahtlosen Vorrichtung aufweist, dann führt die drahtlose Vorrichtung den Prozess wahrscheinlich nicht aus, da die drahtlose Vorrichtung selbst keine Informationen „sendet und empfängt“. Der Durchschnittsfachmann wird verstehen, wann die Anwendung eines bestimmten VACS für eine bestimmte Lösung unangemessen ist. In allen Lösungen wird in Betracht gezogen, dass mindestens das Fahrzeugrechensystem (VCS), das sich in dem Fahrzeug selbst befindet, die beispielhaften Prozesse ausführen kann.
  • Die US-Anmeldung mit Veröffentlichungsnr. 2013/0031540, eingereicht am 26. Juli 2001, und die US-Anmeldung mit Veröffentlichungsnr. 2013/0042231, eingereicht am 7. August 2011, sind gemeinsam besessene Anmeldungen, deren Inhalte hiermit durch Bezugnahme aufgenommen werden.
  • Die Software von Fahrzeugmodulen wie PCM oder TCM muss oft aktualisiert oder überarbeitet werden. Fahrzeugprüfprogramme und Maßnahmen seitens des Händlers oder Außendienstmitarbeiters sind sehr zeitaufwendig und führen zu Mehrkosten, wenn mehrere Fahrzeuge oder Entwicklungsplattformen manuell umprogrammiert werden. Derzeit muss jedes Prüffahrzeug/jede Plattform oft lokalisiert, manuell im Hinblick auf den Softwarestand und die Hardwareteilenummer inventarisiert und mittels eines Service- oder Diagnosewerkzeugs manuell umprogrammiert werden.
  • Die Ausführungsbeispiele stellen Prozesse dar, die für eine Flotte von Fahrzeugen, die sich im Hinblick auf ihre Modulhardware und/oder Softwarekonfigurationen individuell unterscheiden können, gleichzeitig ausgeführt werden können. Ein beliebiges individuelles Umprogrammierungsereignis kann je nachdem, welche Fahrzeuge mit dem Server verbunden sind, gleichzeitig mit dem Rest der Flotte stattfinden.
  • Ein sicherer OEM-Server speichert Software für die Erzeugung der Fahrzeugmodulprogrammierung/-umprogrammierung und kann auch in einer Version bereitgestellt sein, die nur Fahrzeugsmodulentwicklungssoftware hostet.
  • Die hierin beschriebenen Ausführungsbeispiele ermöglichen die Umprogrammierung mehrerer Flottenfahrzeuge mit mehreren Modulen an jedem Flottenfahrzeug. Sie stellen eine automatische Dokumentation ganzer Flash-Ereignisse für ein Fahrzeug und das sofortige Hochladen auf die Fahrzeugkonfigurationsdatenbank bereit. Ferner ermöglichen sie die automatische Erkennung von Fahrzeughardwarekonfigurationen, die Übermittelung dieser Konfiguration an einen sicheren Server und die Anordnung der Verpackung und sicheren Übertragung an ein Fahrzeug, sodass sichergestellt werden kann, dass jedes Fahrzeug gemäß seiner spezifischen Konfiguration geflasht wird. Da das Fahrzeug zur Verwirklichung der Ausführungsformen die Kommunikation mit dem rechnerfernen Server initiiert, wird zusätzliche Sicherheit bereitgestellt, da Fahrzeuge nicht angezapft werden können, um ihre individuellen IP-Adressen herauszufinden (was sie gegenüber Hackern angreifbar macht).
  • 2 stellt einen beispielhaften Prozess zum Aktualisieren mehrerer Module eines einzigen Fahrzeugs dar. In einem Flottenbeispiel kann eine Anzahl von Fahrzeugen gleichzeitig mit einem bestimmten Server verbunden werden und gleichzeitige Aktualisierungen anfordern. In den Ausführungsbeispielen kontaktieren die Fahrzeuge den Server für Aktualisierungszwecke. Immer wenn also ein Fahrzeug verbunden wird, können die Modulinformationen dem Server bereitgestellt werden, und der Server kann diese Informationen mit vorhandenen Informationen (im Hinblick auf ihre Einheitlichkeit) vergleichen und Module für das Fahrzeug aktualisieren, das die spezifische Konfiguration aufweist, die mit diesem Fahrzeug in Beziehung steht.
  • In diesem Ausführungsbeispiel empfängt der Server eine Verbindungsanforderung von einem Fahrzeug 201. Verschiedene Validierungsprozesse können implementiert werden, um zu gewährleisten, dass die Anforderung durchführbar ist, wobei der Server nach Vollendung dieser (falls gewünscht) Fahrzeugdaten 203 erfassen kann. Fahrzeugdaten können einschließen, sind jedoch nicht beschränkt auf Modulsoftwareversionen, verschiedene Komponenteninstallationen usw. Diese können Kennungen für Sekundärmarktkomponenten sowie eine Bestätigung aufweisen, dass verschiedene OEM-installierte Komponenten noch immer installiert sind.
  • Wenngleich der rechnerferne Server über die Konfiguration eines bestimmten Fahrzeugs Buch führen kann, kann es dennoch nützlich sein, diese Konfiguration zu überprüfen, bevor eine Modulaktualisierung vorgenommen wird. Nachdem eine Softwareversion empfangen (und gegebenenfalls mit gespeicherten Daten abgeglichen) wurde, kann die Modulversion mit einer Datenbank verglichen werden, die das bzw. die aktuellsten Modul(e) für ein Fahrzeug einer bestimmten Konfiguration 205 enthält.
  • Wenn das Modul aktuell 207 ist und keine weiteren Module verbleiben 209, kann der Prozess beendet werden. Wenn weitere Module zur Aktualisierung bei einem bestimmten Fahrzeug verbleiben, kann sich der Prozess zu einem nächsten Modul 213 bewegen und die Überprüfung wiederholen und den Prozess für alle verbleibenden Module wiederholen.
  • Wenn ein bestimmtes Softwaremodul nicht aktuell ist, kann der Prozess Aktualisierungsdaten an das Fahrzeug 211 senden und einen rechnerfernen Umprogrammierungsprozess beginnen. Ein Beispiel dieses Prozesses ist in dem hierin aufgenommenen Verweis 2013/0031540 beschrieben. Für jedes Modul, das aktualisiert werden muss, kann dieser Prozess wiederholt werden, um das Fahrzeug nach der Verbindung (beispielsweise innerhalb der zeitlichen Beschränkungen) vollständig zu aktualisieren.
  • Da ein rechnerferner Server eine Anzahl dieser Anforderungen handhaben kann, können Fuhrparkbetreiber sowie Verbraucher im Allgemeinen sicher sein, dass ihre Software angemessen aktualisiert ist, immer wenn eine Verbindung zu dem rechnerfernen Server hergestellt wird. Dies kann zur Vermeidung von Schwierigkeiten dabei beitragen, ob eine neue Softwareversion installiert wurde oder nicht.
  • 3 stellt ein beispielhaftes Verfahren zum gleichzeitigen Aktualisieren mehrere Module dar. Dieses erläuternde Beispiel ist dem aus 2 ähnlich, ermöglicht jedoch eine schnellere Aktualisierung, da unterschiedliche Module an unterschiedlichen Bussen gleichzeitig aktualisiert werden können.
  • In diesem erläuternden Beispiel (das von der Fahrzeugseite dargestellt ist), sammelt der Prozess Daten in Bezug auf installierte Komponenten und Softwaremodulversionen 301. Wenn danach ausreichend Daten vorhanden sind und wenn eine Verbindung vorhanden ist, verbindet sich der Prozess mit einem rechnerfernen Server 303, sodass die fahrzeugbezogenen Daten gesendet 305 werden können.
  • Nachdem der rechnerferne Server alle einschlägigen Fahrzeugdaten empfangen hat, kann ein Prozess wie der in 2 dargestellte eintreten. In diesem Fall sammelt und sendet der Prozess die Aktualisierungen (und sendet und verarbeitet sie eben nicht alle gleichzeitig), sodass ein Fahrzeug mit mehreren Modulen an mehreren Bussen diese Module gleichzeitig umprogrammieren kann.
  • Die kompilierten Aktualisierungsdaten werden von dem Fahrzeug 307 empfangen und das Fahrzeug bestimmt, ob mehrere Aktualisierungen benötigt werden oder ob nur ein einziges Modul umprogrammiert 309 werden muss. Falls nur ein einziges Modul geflasht werden muss, flasht der Prozess die einzige Aktualisierung 311. Das umprogrammierte Modul empfängt dann einen Rücksetzungsbefehl 337, um den Neuprogrammierungszustand zu verlassen. Erfolglose Flash-Vorgänge werden ebenfalls in ihren ursprünglichen Zustand 339 wiederhergestellt, um den Betrieb von Fahrzeugsystemen nicht zu behindern. Danach aktualisiert der Prozess den rechnerfernen Server im Hinblick auf die Erfolge und Misserfolge 341.
  • Wenn mehrere Aktualisierungen vorhanden sind, prüft der Prozess, ob Module an mehreren Bussen vorhanden sind, von denen jedes aktualisiert 317 werden muss. Falls nicht, dann flasht der Prozess eine einzige Aktualisierung für das Modul an einem ersten Bus 321, wonach der Prozess unter der Annahme, dass noch Module 343 verbleiben, zu einer nächsten Aktualisierung 345 geht und den Vorgang wiederholt.
  • Falls mehrere Module an mehreren Bussen vorhanden sind, flasht der Prozess diese Module gleichzeitig 335. Wenn nach Vollendung noch Aktualisierungen 315 verbleiben, wird der Prozess mit der bzw. den nächsten Aktualisierung(en) 313 fortgesetzt. Auf diese Weise wird ein bestimmtes Fahrzeug effizient umprogrammiert, wobei die meisten oder alle Module auf neue Versionen aktualisiert werden. Wenn fehlgeschlagene Versionen berichtet werden, kann der Prozess versuchen, diese Version erneut zu aktualisieren, oder abwarten und dies zu einem späteren Zeitpunkt versuchen.
  • Wenngleich vorstehend Ausführungsbeispiele beschrieben wurden, sollen diese Ausführungsformen nicht alle möglichen Formen der Erfindung beschreiben. Vielmehr sind die Begriffe, die in der Spezifikation verwendet werden, beschreibende und nicht einschränkende Begriffe, wobei es sich versteht, dass verschiedene Änderungen vorgenommen werden können, ohne von dem Geist und Schutzbereich der Erfindung abzuweichen. Außerdem können die Merkmale verschiedener implementierender Ausführungsformen kombiniert werden, um weitere Ausführungsformen der Erfindung zu bilden.
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • 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.
  • Zitierte Nicht-Patentliteratur
    • IEEE 802 PAN [0023]
    • IEEE 802 LAN [0023]
    • IEEE 802 PAN [0023]
    • IEEE 1394 [0026]
    • IEEE 1284 [0026]

Claims (7)

  1. System, umfassend: einen Prozessor, der für Folgendes konfiguriert ist: drahtloses Empfangen von Aktualisierungsanforderungen von mehreren Fahrzeugen; für jede Anforderung, Bestimmen, ob Fahrzeugmodule aktualisiert werden müssen; Abrufen einer aktualisierten Version und Senden der aktualisierten Version an ein Fahrzeug zum Umprogrammieren für jedes Modul, das aktualisiert werden muss; Empfangen einer Bestätigung für jedes Modul, das umprogrammiert wurde; und Aktualisieren einer Fahrzeugkonfiguration mit eine Versionskennung, welcher der aktualisierten Version für jedes umprogrammierte Modul entspricht.
  2. System nach Anspruch 1, wobei die Aktualisierungsanforderungen Fahrzeuginformationen aufweisen.
  3. System nach Anspruch 2, wobei die Fahrzeuginformationen eine oder mehrere Modulversionskennungen aufweisen.
  4. System nach Anspruch 3, wobei die Fahrzeuginformationen eine Fahrzeugkomponentenkonfiguration aufweisen.
  5. System nach Anspruch 3, wobei die Modulversionskennungen mit gespeicherten Modulversionen aus einer Moduldatenbank verglichen werden, um zu bestimmen, welche Module aktualisiert werden müssen.
  6. System nach Anspruch 5, wobei der Prozessor ferner konfiguriert ist, zu bestimmen, welche gespeicherten Modulversionen aus der Moduldatenbank für Vergleichszwecke basierend mindestens teilweise auf der Fahrzeugkomponentenkonfiguration angemessen sind.
  7. System nach Anspruch 1, wobei auf die Fahrzeugkonfiguration zugegriffen wird, um aktuelle Modulversionen zu bestimmen, die mit gespeicherten Modulversionen aus einer Moduldatenbank verglichen werden, um zu bestimmen, welche Module aktualisiert werden müssen.
DE201410204222 2013-03-14 2014-03-07 Verfahren und vorrichtung für die umprogrammierung mehrerer fahrzeugsoftwaremodule Pending DE102014204222A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/803850 2013-03-14
US13/803,850 US10061574B2 (en) 2013-03-14 2013-03-14 Method and apparatus for multiple vehicle software module reflash

Publications (1)

Publication Number Publication Date
DE102014204222A1 true DE102014204222A1 (de) 2014-09-18

Family

ID=51419261

Family Applications (1)

Application Number Title Priority Date Filing Date
DE201410204222 Pending DE102014204222A1 (de) 2013-03-14 2014-03-07 Verfahren und vorrichtung für die umprogrammierung mehrerer fahrzeugsoftwaremodule

Country Status (3)

Country Link
US (1) US10061574B2 (de)
CN (1) CN104049994A (de)
DE (1) DE102014204222A1 (de)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10169821B2 (en) * 2013-09-20 2019-01-01 Elwha Llc Systems and methods for insurance based upon status of vehicle software
US9529584B2 (en) * 2013-11-06 2016-12-27 General Motors Llc System and method for preparing vehicle for remote reflash event
US9524156B2 (en) * 2014-01-09 2016-12-20 Ford Global Technologies, Llc Flexible feature deployment strategy
US9766874B2 (en) 2014-01-09 2017-09-19 Ford Global Technologies, Llc Autonomous global software update
US9716762B2 (en) 2014-03-31 2017-07-25 Ford Global Technologies Llc Remote vehicle connection status
US9229704B2 (en) * 2014-04-01 2016-01-05 Ford Global Technologies, Llc Smart vehicle reflash with battery state of charge (SOC) estimator
US10140110B2 (en) 2014-04-02 2018-11-27 Ford Global Technologies, Llc Multiple chunk software updates
US20160124738A1 (en) * 2014-05-16 2016-05-05 Rosemount Aerospace Inc. Tablet based airborne data loader
US9298649B2 (en) * 2014-05-30 2016-03-29 Ford Global Technologies, Llc Method and apparatus for dynamically updating a vehicle module configuration record
US20160373913A1 (en) * 2015-06-17 2016-12-22 GM Global Technology Operations LLC Automatic vehicle updating via wireless device
MX357454B (es) * 2015-07-16 2018-06-26 Inst Tecnologico Y De Estudios Superiores De Occidente A C Sistema y método para la reprogramación de dispositivos ecu (unidades electrónicas de control) en vehiculos, vía radio digital.
US9720680B2 (en) 2015-07-23 2017-08-01 Honda Motor Co., Ltd. Methods and apparatus for wirelessly updating vehicle systems
US12001825B2 (en) 2016-02-19 2024-06-04 Ford Global Technologies, Llc Method and apparatus for vehicle software update installation
US11782691B2 (en) 2016-02-19 2023-10-10 Ford Global Technologies, Llc Method and apparatus for over the air updates
US10002082B2 (en) 2016-02-19 2018-06-19 Ford Global Technologies, Llc Method and apparatus for cyclical key-off file replacement
DE102016207836A1 (de) * 2016-05-06 2017-11-09 Robert Bosch Gmbh Verfahren und System zum Aktualisieren der Software eines Kraftfahrzeug-Sensors
US10656932B2 (en) * 2016-07-12 2020-05-19 United Radio, Inc. Radio updating method
US10290160B2 (en) 2016-11-07 2019-05-14 United Technologies Corporation Vehicle data collection system and method
US10353696B2 (en) * 2017-04-13 2019-07-16 Blackberry Limited Program release packages including program updates
FR3067136B1 (fr) * 2017-05-30 2020-08-14 Peugeot Citroen Automobiles Sa Procede de mise a jour d’un calculateur embarque de vehicule
CN107360262B (zh) * 2017-09-07 2020-06-05 北京经纬恒润科技有限公司 一种软件更新方法及装置
US10564954B2 (en) * 2017-10-11 2020-02-18 Ford Global Technologies, Llc Hybrid electric vehicle with automated software update system
JP7225596B2 (ja) * 2018-07-30 2023-02-21 トヨタ自動車株式会社 プログラム更新システム、プログラム更新サーバーおよび車両
KR20200043666A (ko) * 2018-10-18 2020-04-28 현대자동차주식회사 소프트웨어 업데이트 시스템, 소프트웨어 업데이트 방법 및 소프트웨어 업데이트 서버
US11639142B2 (en) 2019-01-11 2023-05-02 Ford Global Technologies, Llc Electronic control module wake monitor
US11228884B2 (en) * 2019-01-16 2022-01-18 Ford Global Technologies, Llc Vehicle-to-vehicle file sharing system and method
US20210072975A1 (en) * 2019-09-09 2021-03-11 Ford Global Technologies, Llc Vehicle ecu flash programming
US11465638B2 (en) 2020-10-26 2022-10-11 Toyota Motor Engineering & Manufacturing North America, Inc. System and method for modulating a performance of a vehicle with modified vehicle components
US11563731B2 (en) 2020-12-17 2023-01-24 Argo Ai Llc Method of re-assigning address to network device
US11782692B2 (en) 2021-04-16 2023-10-10 Toyota Motor North America, Inc. Transport component acceptance
US20230098880A1 (en) * 2021-09-30 2023-03-30 Argo AI, LLC Distributed method and system for vehicle identification tracking

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5708425A (en) 1997-01-17 1998-01-13 Hughes Aircraft Company Real time messaging interface for vehicle detection sensors
US8209120B2 (en) 1997-10-22 2012-06-26 American Vehicular Sciences Llc Vehicular map database management techniques
US7917628B2 (en) 1999-12-02 2011-03-29 Western Digital Technologies, Inc. Managed peer-to-peer applications, systems and methods for distributed data access and storage
US7237238B2 (en) 2002-03-01 2007-06-26 Dell Products L.P. Method and apparatus for automated operating systems upgrade
EP1445165B1 (de) 2003-02-08 2006-03-08 Jungheinrich Aktiengesellschaft Deichsel für einen Handgabelhubwagen
US20040187011A1 (en) 2003-03-18 2004-09-23 Lee Long K. Prevention of unauthorized software distribution
US7420954B2 (en) 2004-01-13 2008-09-02 General Motors Corporation Efficient lightweight information dissemination algorithm for mobile wireless ad hoc networks
US20050216902A1 (en) * 2004-03-23 2005-09-29 General Motors Corporation Method and system for vehicle software configuration update management
US7506309B2 (en) * 2004-03-23 2009-03-17 General Motors Corporation Method for managing vehicle software configuration updates
DE102004017602B4 (de) 2004-04-07 2022-03-17 Volkswagen Ag Verfahren und Anordnung für ein Kommunikationsnetz mit direkter Fahrzeug-Fahrzeug Kommunikation
US7366589B2 (en) * 2004-05-13 2008-04-29 General Motors Corporation Method and system for remote reflash
US8332817B2 (en) 2005-11-08 2012-12-11 Red Hat, Inc. Certifying a software application based on identifying interface usage
US20070185624A1 (en) 2006-02-07 2007-08-09 General Motors Corporation Method for remote reprogramming of vehicle flash memory
US20080005733A1 (en) 2006-06-29 2008-01-03 Balaji Ramachandran Method and apparatus for updating firmware and software
US7848278B2 (en) 2006-10-23 2010-12-07 Telcordia Technologies, Inc. Roadside network unit and method of organizing, managing and maintaining local network using local peer groups as network groups
SG146461A1 (en) 2007-03-15 2008-10-30 Agis Pte Ltd Location determination using sequential pattern recognition
EP2185370B1 (de) 2007-08-29 2013-11-06 Continental Teves AG & Co. oHG Verfahren und einrichtung zur anpassung eines fahrdynamiksystems in einem kraftfahrzeug
US20090119657A1 (en) * 2007-10-24 2009-05-07 Link Ii Charles M Methods and systems for software upgrades
US9461827B2 (en) 2008-04-11 2016-10-04 Toyota Motor Engineering & Manufacturing North America, Inc. Method for distributing a list of certificate revocations in a vanet
JP5113699B2 (ja) * 2008-09-24 2013-01-09 株式会社日立ソリューションズ ファームウェア更新システム、及び更新イメージ生成・配布サーバ装置
US9003387B2 (en) 2009-09-25 2015-04-07 Fisher-Rosemount Systems, Inc. Automated deployment of computer-specific software updates
US8863114B2 (en) 2010-12-06 2014-10-14 Red Hat, Inc. Managing software packages using a version control system
US9557981B2 (en) * 2011-07-26 2017-01-31 Ford Global Technologies, Llc Method and apparatus for automatic module upgrade
US20130053003A1 (en) * 2011-08-31 2013-02-28 Toyota Motor Engineering & Manufacturing North America, Inc. Auxiliary device and system for adding web-based multimedia applications to a multimedia device

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
IEEE 1284
IEEE 1394
IEEE 802 LAN
IEEE 802 PAN

Also Published As

Publication number Publication date
CN104049994A (zh) 2014-09-17
US20140282467A1 (en) 2014-09-18
US10061574B2 (en) 2018-08-28

Similar Documents

Publication Publication Date Title
DE102014204222A1 (de) Verfahren und vorrichtung für die umprogrammierung mehrerer fahrzeugsoftwaremodule
DE102015107189A1 (de) Modulschnittstelle für Fahrzeugaktualisierungen
DE102017100750A1 (de) Verfahren und vorrichtung für over-the-air-updates
DE102015116703A1 (de) Verfahren und Systeme zur Aktualisierung eines Fahrzeugdatenverarbeitungssystems
DE102016100203A1 (de) Verfahren und Systeme zur Aktualisierung von Fahrzeugsteuerungen
DE102013216055A1 (de) Verfahren und Vorrichtungen für Fahrzeugrechensystem-Softwareaktualisierungen
DE102015108793A1 (de) Fahrzeugdownload mittels entfernter Mobilvorrichtung
DE102015201448A1 (de) Verfahren und Gerät für bleibende übertragbare persönlich anpassbare Fahrzeugeinstellungen
DE102017100751A1 (de) Verfahren und vorrichtung für fahrzeug-software-updateinstallation
DE102016100430A1 (de) Verfahren und Systeme zur Aktualisierung von Fahrzeugsteuerungen
DE102012106791A1 (de) Verfahren und vorrichtung zur automatischen modulaufrüstung
DE102015211904A1 (de) Fahrzeugsoftware-Aktualisierungsverifikation
DE102011079875A1 (de) Bereitstellung von daten an ein fahrzeug-infotainment-datenverarbeitungssystem
DE102015203151A1 (de) Stille Softwareaktualisierungen innerhalb eines Fahrzeugs
DE102016102509A1 (de) Verfahren und Vorrichtung zur Anwendungsverwaltung und -steuerung
DE102015206639A1 (de) Fahrzeuginterne Wohnhaus-Automation-Integration
DE102014219540A1 (de) Verfahren und eine Einrichtung zur bedarfsgerechten drahtlosen Modulaktualisierung
DE102015206764A1 (de) System und Verfahren zum Verwalten von Softwareaktualisierungen an einem Fahrzeugrechensystem
DE102016106802A1 (de) Fahrzeugsteuerungsspeichermethoden und -systeme
DE102012213027A1 (de) Verfahren und vorrichtungen zur softwareaktualisierung
DE102014219158A1 (de) Systeme und verfahren für die identifikation eines beeinträchtigten moduls
DE102015200893A1 (de) Vorrichtung und Verfahren zur Softwareimplementierung zwischen einem Fahrzeug und Mobilgerät
DE102015108349A1 (de) Verfahren und vorrichtung für das dynamische aktualisieren einer fahrzeugmodulkonfigurationsaufzeichnung
DE102015119717A1 (de) Verfahren und Gerät für das Handhaben einer Kommunikationsanforderung durch eine eingebrachte Vorrichtung
DE102017109838A1 (de) Verfahren und vorrichtung zur auswahl und nutzung eines dynamischen telematiknetzwerks

Legal Events

Date Code Title Description
R082 Change of representative

Representative=s name: DOERFLER, THOMAS, DR.-ING., DE

R012 Request for examination validly filed
R082 Change of representative

Representative=s name: PATERIS THEOBALD ELBEL & PARTNER, PATENTANWAEL, DE

Representative=s name: PATERIS THEOBALD ELBEL FISCHER, PATENTANWAELTE, DE

R084 Declaration of willingness to licence