DE102014118910A1 - Autonome globale Softwareaktualisierung - Google Patents

Autonome globale Softwareaktualisierung Download PDF

Info

Publication number
DE102014118910A1
DE102014118910A1 DE102014118910.8A DE102014118910A DE102014118910A1 DE 102014118910 A1 DE102014118910 A1 DE 102014118910A1 DE 102014118910 A DE102014118910 A DE 102014118910A DE 102014118910 A1 DE102014118910 A1 DE 102014118910A1
Authority
DE
Germany
Prior art keywords
version
topic
vehicle
software
tree
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
DE102014118910.8A
Other languages
English (en)
Inventor
Joseph Paul Rork
Brian Petersen
Ritesh Pandya
Praveen Yalavarty
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 DE102014118910A1 publication Critical patent/DE102014118910A1/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
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/20Administration of product repair or maintenance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Computer Security & Cryptography (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

Ein computerimplementiertes Verfahren kann ein Abonnieren eines ersten Themenbaumthemas enthalten, das mit einer installierten Fahrzeug-Softwarekomponentenversion assoziiert ist; Identifizieren einer gewünschten Softwarekomponentenversion basierend auf einer veröffentlichten Benachrichtigung, die vom ersten Thema abgerufen wird; und Aktualisieren, wenn sich die gewünschte Version und die installierte Version unterscheiden, einer Softwarekomponente unter Verwendung einer Softwareaktualisierung umfassen, die von einem zweiten Themenbaumthema abgerufen wird, das mit Softwareaktualisierungen für die installierte Version assoziiert ist.

Description

  • TECHNISCHES GEBIET
  • Die beispielhaften Ausführungsformen betreffen im Allgemeinen ein Verfahren und eine Vorrichtung zum Durchführen von Softwareaktualisierungen.
  • HINTERGRUND
  • Zum Aktualisieren einer Softwareversion einer Komponente eines Fahrzeugs kann das Fahrzeug zu einem Vertragshändler gefahren und von einem Techniker gewartet werden. Der Techniker kann ein System verwenden, das die einzelnen Softwarestufen jeder Komponente im Fahrzeug sowie verfügbare Softwareaktualisierungen verfolgt. Der Techniker kann die durch das System angezeigten Softwareaktualisierungen manuell anwenden und jegliche Änderungen zurück in das System eintragen.
  • ZUSAMMENFASSUNG
  • In einer ersten beispielhaften Ausführungsform umfasst ein computerimplementiertes Verfahren ein Abonnieren eines ersten Themenbaumthemas, das mit einer installierten Fahrzeug-Softwarekomponentenversion assoziiert ist, und ein Identifizieren einer gewünschten Softwarekomponentenversion basierend auf einer Benachrichtigung, die im Thema veröffentlicht wird. Das Verfahren umfasst ferner, wenn sich die gewünschte Version und die installierte Version unterscheiden, ein Aktualisieren einer Softwarekomponente unter Verwendung einer Softwareaktualisierung in einem zweiten Themenbaumthema, das mit einer aktualisierten Version der installierten Version assoziiert ist.
  • In einer zweiten beispielhaften Ausführungsform umfasst ein Fahrzeug ein fahrzeugbasiertes Computersystem, das so konfiguriert ist, dass es ein erstes Themenbaumthema abonniert, das mit einer installierten Fahrzeug-Softwarekomponentenversion assoziiert ist, und eine gewünschte Softwarekomponentenversion basierend auf einer Benachrichtigung identifiziert, die vom ersten Thema abgerufen wird. Das fahrzeugbasierte Computersystem ist ferner so konfiguriert, dass es, wenn sich die gewünschte Version und die installierte Version unterscheiden, eine Softwarekomponente unter Verwendung einer Softwareaktualisierung aktualisiert, die von einem zweiten Themenbaumthema abgerufen wird, das mit Softwareaktualisierungen für die installierte Version assoziiert ist.
  • In einer dritten beispielhaften Ausführungsform speichert ein nichtflüchtiges computerlesbares Speichermedium Anweisungen, die bei Ausführung durch einen Prozessor den Prozessor so konfigurieren, dass er ein erstes Themenbaumthema abonniert, das mit einer installierten Fahrzeug-Softwarekomponentenversion assoziiert ist, und eine gewünschte Softwarekomponentenversion basierend auf einer Benachrichtigung identifiziert, die vom ersten Thema abgerufen wird. Das computerlesbare Speichermedium speichert ferner Anweisungen, die bei Ausführung durch einen Prozessor den Prozessor so konfigurieren, dass er, wenn sich die gewünschte Version und die installierte Version unterscheiden, eine Softwarekomponente unter Verwendung einer Softwareaktualisierung aktualisiert, die von einem zweiten Themenbaumthema abgerufen wird, das mit Softwareaktualisierungen für die installierte Version assoziiert ist.
  • KURZE BESCHREIBUNG DER ZEICHNUNGEN
  • 1 veranschaulicht eine beispielhafte Blocktopologie für ein fahrzeugbasiertes Computersystem für ein Fahrzeug;
  • 2 veranschaulicht ein beispielhaftes globales Aktualisierungssystem in Kommunikation mit einem fahrzeugbasierten Computersystem
  • 3 veranschaulicht einen beispielhaften Themenbaum für Softwareversionen eines fahrzeugbasierten Computersystems;
  • 4A veranschaulicht einen beispielhaften Themenbaum für eine Softwarekomponente eines Fahrzeugs 31, in welchem im praktischen Einsatz mehrere Versionen installiert werden;
  • 4B veranschaulicht einen beispielhaften Themenbaum zum inkrementellen Aktualisieren von Versionen einer Softwarekomponente eines Fahrzeugs; und
  • 5 veranschaulicht einen beispielhaften Prozess zum Aktualisieren einer Softwareversion einer Komponente des fahrzeugbasierten Computersystems.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Wie erforderlich, werden hier detaillierte Ausführungsformen der vorliegenden Erfindung offenbart; es versteht sich jedoch, dass die offenbarten Ausführungsformen rein beispielhaft für die Erfindung sind, die in verschiedenen und alternativen Formen ausgestaltet werden kann. Die Figuren sind nicht notwendigerweise maßstabsgetreu; einige Merkmale können übertrieben oder minimiert sein, um Details von bestimmten Komponenten zu zeigen. Die speziellen strukturellen und funktionalen Details, die hier offenbart werden, sollen daher nicht als einschränkend interpretiert werden, sondern lediglich als eine repräsentative Basis, um einem Fachmann zu lehren, wie die vorliegende Erfindung auf verschiedene Weise anzuwenden ist.
  • Ein Fahrzeug-Softwareaktualisierungssystem kann ein Veröffentlichen/-Abonnieren-Modell zum Veröffentlichen von Softwareaktualisierungen verwenden, die von Fahrzeug-Abonnenten konsumiert werden. Das Veröffentlichen-/Abonnieren-Modell kann Themen verwenden, die auch als logische Kanäle bekannt sind, durch welche Herausgeber Nachrichten senden können und Abonnenten Nachrichten empfangen können. In einigen Fällen kann ein Fahrzeug ein Herausgeber sein und Fahrzeugmeldungen an ein Dienstbereitstellungsnetz senden, auf Befehle vom Dienstbereitstellungsnetz reagieren oder das Dienstbereitstellungsnetz über den Fahrzeugkonnektivitätsstatus benachrichtigen. In anderen Fällen kann ein Fahrzeug ein Abonnent sein und Steuernachrichten oder Softwareaktualisierungen von einem Dienstbereitstellungsnetz empfangen.
  • Eine Themenbaumstruktur kann durch das Fahrzeug-Softwareaktualisierungssystem verwendet werden, um eine Struktur der Themen und Unterthemen zu definieren, die beim Senden von Nachrichten zwischen den Fahrzeugen und dem Dienstbereitstellungsnetz verwendet werden. Ein fahrzeugbasiertes Computersystem (VCs), wie beispielsweise eine Telematikeinheit eines Fahrzeugs, kann Knoten des Themenbaums abonnieren, die den installierten Software-/Firmwareversionen des Fahrzeugs entsprechen.
  • Ein Herausgeber von Softwareaktualisierungen (z. B., ohne Einschränkung, ein entfernter Server eines Originalgeräteherstellers (OEM) usw.) kann eine Benachrichtigungsnachricht in einem Themenknoten bereitstellen, der einem zu aktualisierenden Fahrzeug oder einer zu aktualisierenden Softwareversion entspricht. Der Herausgeber kann ferner eine Softwareaktualisierung in einem Themenknoten veröffentlichen, der mit einer durch die Softwareaktualisierung zu aktualisierenden Version der Software assoziiert ist. In einigen Beispielen kann die Benachrichtigungsnachricht eine globale Konfigurationsdatei, die eine gewünschte Softwareversion spezifiziert, auf welche die globale Konfigurationsdatei anwendbar ist, umfassen oder die Form einer solchen annehmen. Das Fahrzeug kann ferner die Nachricht abrufen und bestimmen, ob es seine Softwareversion auf die durch die Benachrichtigung spezifizierte Version aktualisieren soll. Wenn zum Beispiel die gewünschte Softwareversion neuer als die installierte Softwareversion des Fahrzeugs ist, kann das Fahrzeug planen, auf die gewünschte Softwareversion zu aktualisieren. Zum Durchführen der Aktualisierung kann das Fahrzeug den Themenknoten abonnieren, der seiner installierten Softwareversion entspricht, und die in diesem Themenknoten veröffentlichte Softwareaktualisierung installieren. Demnach kann ein Herausgeber von Softwareaktualisierungen zum Aktualisieren von VCSs einer bestimmten Softwareversion eine Softwareaktualisierung bereitstellen und eine Konfigurationsdatei in einem Thema der jeweiligen Softwareversion veröffentlichen, die aktualisiert werden soll.
  • 1 veranschaulicht eine beispielhafte Blocktopologie für ein fahrzeugbasiertes Computersystem 1 (VCS für engl. vehicle-based computing system) für ein Fahrzeug 31. Ein Beispiel für solch ein fahrzeugbasiertes Computersystem 1 ist das von der FORD MOTOR COMPANY hergestellte SYNC-System. Ein mit einem fahrzeugbasierten Computersystem ausgestattetes Fahrzeug kann eine visuelle Front-End-Schnittstelle 4 umfassen, die sich im Fahrzeug 31 befindet. Der Benutzer ist möglicherweise außerdem in der Lage, mit der Schnittstelle zu interagieren, wenn sie zum Beispiel mit einem berührungsempfindlichen Bildschirm versehen ist. In einer anderen beispielhaften Ausführungsform erfolgt die Interaktion durch Tastendrücke, Sprachdialogsystem mit automatischer Spracherkennung und Sprachsynthese.
  • In der in 1 dargestellten beispielhaften Ausführungsform 1 steuert ein Prozessor 3 oder eine zentrale Verarbeitungseinheit (CPU für engl. central processing unit) 3 wenigstens einen Teil des Betriebs des fahrzeugbasierten Computersystems. Der Prozessor 3, der innerhalb des Fahrzeugs 31 vorgesehen ist, ermöglicht Onboard-Verarbeitung von Befehlen und Routinen. Ferner ist der Prozessor 3 sowohl mit einem flüchtigen 5 als auch mit einem nichtflüchtigen Speicher 7 verbunden. In dieser beispielhaften Ausführungsform ist der flüchtige Speicher 5 ein Direktzugriffspeicher (RAM für engl. random acces memory) und der nichtflüchtige Speicher 7 ist ein Festplattenlaufwerk (HDD für engl. hard disk drive) oder Flash-Speicher. Im Allgemeinen kann ein nichtflüchtiger Speicher 7 alle Arten von Speicher umfassen, welche Daten speichern, wenn ein Computer oder ein anderes Gerät ausgeschaltet wird. Diese umfassen, ohne darauf beschränkt zu sein, HDDs, CDs (compact disks), DVDs (digital versatile disks), Magnetbänder, Festkörperlaufwerke, tragbare USB(universal serial bus)-Laufwerke und andere geeignete Arten von nichtflüchtigen Speicher 7.
  • Der Prozessor 3 ist außerdem mit einer Anzahl von unterschiedlichen Eingängen versehen, die es dem Benutzer ermöglichen, über eine Schnittstelle mit dem Prozessor 3 in Verbindung zu treten. In dieser beispielhaften Ausführungsform sind ein Mikrofon 29, ein Zusatzeingang 25 (für Eingang 33), ein USB-Eingang 23, ein GPS(globales Positionsbestimmungssystem)-Eingang 24, ein Bildschirm 4, der ein berührungsempfindlicher Bildschirm sein kann, und ein BLUETOOTH-Eingang 15 vorgesehen. Es ist auch ein Eingangswähler 51 vorgesehen, der es einem Benutzer ermöglicht, zwischen verschiedenen Eingängen zu wechseln. Sowohl die Eingaben in das Mikrofon als auch in den Zusatzanschluss werden von einem Wandler 27 von analog in digital umgewandelt, bevor sie an den Prozessor 3 weitergeleitet wird. Obwohl nicht dargestellt, können zahlreiche der Fahrzeugkomponenten und Zusatzkomponenten in Kommunikation mit dem VCS 1 ein Fahrzeugnetz (wie beispielsweise, ohne darauf beschränkt zu sein, einen CAN(car area network)-Bus) verwenden, um Daten zum und vom VCS 1 (oder Komponenten davon) weiterzuleiten.
  • Ausgaben an das VCS-System 1 können eine visuelle Anzeige 4 und einen Lautsprecher 13 oder einen Stereo-Systemausgang umfassen, ohne darauf beschränkt zu sein. Der Lautsprecher 13 ist mit einem Verstärker 11 verbunden und empfängt sein Signal vom Prozessor 3 durch einen Digital-Analog-Wandler 9. Außerdem kann entlang der bei 19 bzw. 21 dargestellten bidirektionalen Datenströme auch eine Ausgabe an ein entferntes BLUETOOTH-Gerät, wie beispielsweise ein persönliches Navigationsgerät (PND für engl. personal navigation device) 54, oder ein USB-Gerät, wie beispielsweise ein Fahrzeug-Navigationsgerät 60, erfolgen.
  • In einer beispielhaften Ausführungsform verwendet das System 1 den BLUETOOTH-Transceiver 15 zum Kommunizieren 17 mit einem mobilen Gerät (ND für engl. nomadic device) 53 (z. B. einem Mobiltelefon, Smartphone, PDA oder einem beliebigen anderen Gerät mit drahtloser Fernnetzkonnektivität). Das mobile Gerät 53 kann dann verwendet werden, um mit einem Netz 61 außerhalb des Fahrzeugs 31 zum Beispiel durch Kommunikation 55 mit einem Mobilfunkmast 57 zu kommunizieren 59. In einigen Ausführungsformen kann der Mast 57 ein WiFi-Zugangspunkt sein.
  • Eine beispielhafte Kommunikation zwischen dem mobilen Gerät 53 und dem BLUETOOTH-Transceiver ist durch Kommunikation 14 dargestellt.
  • Das Koppeln eines mobilen Geräts 53 und des BLUETOOTH-Transceivers 15 kann durch eine Taste 52 oder eine ähnliche Eingabe angewiesen werden. Dementsprechend wird die CPU davon unterrichtet, dass der Onboard-BLUETOOTH-Transceiver 15 mit einem BLUETOOTH-Transceiver in einem mobilen Gerät 53 gekoppelt werden wird.
  • Daten können zum Beispiel unter Verwendung eines Datentarifs, Data-over-Voice oder von Zweiton-Mehrfrequenz(DTMF für engl. two-tone multiple frequency)-Tönen, die mit der mobilen Einrichtung 53 assoziiert sind, zwischen der CPU 3 und dem Netz 61 kommuniziert werden. Alternativ kann es wünschenswert sein, ein Onboard-Modem 63 mit einer Antenne 18 einzubauen, um Daten zwischen der CPU 3 und dem Netz 61 über das Sprachband zu kommunizieren 16. Das mobile Gerät 53 kann dann verwendet werden, um mit einem Netz 61 außerhalb des Fahrzeugs 31 zum Beispiel durch Kommunikation 55 mit einem Mobilfunkmast 57 zu kommunizieren 59. In einigen Ausführungsformen kann das Modem (Mdm) 63 Kommunikation 20 mit dem Mast 57 zum Kommunizieren mit dem Netz 61 aufbauen. Als ein nicht einschränkendes Beispiel kann das Modem 63 ein USB-Mobilfunk-Modem 63 sein, und die Kommunikation 20 kann Mobilfunk-Kommunikation sein.
  • In einer beispielhaften Ausführungsform ist der Prozessor 3 mit einem Betriebssystem versehen, das eine API zum Kommunizieren mit Modem-Anwendungssoftware umfasst. Die Modem-Anwendungssoftware kann auf ein eingebettetes Modul oder eine eingebettete Firmware auf dem BLUETOOTH-Transceiver zugreifen, um drahtlose Kommunikation mit einem entfernten BLUETOOTH-Transceiver (wie zum Beispiel einem, der in einem mobilen Gerät vorzufinden ist) herzustellen. Bluetooth (BTT) ist ein Teilsatz der Kurzstreckennetz-Protokolle (PAN für engl. personal area network) gemäß IEEE (Institute of Electrical and Electronics Engineers) 802. IEEE 802 LAN(local area network)-Protokolle umfassen WiFi (wireless fidelity) und weisen erhebliche Kreuzfunktionalität mit IEEE 802 PAN auf. Beide sind zur drahtlosen Kommunikation innerhalb eines Fahrzeugs 31 geeignet. Andere Kommunikationsmittel, die auf diesem Gebiet verwendet werden können, sind optische Freiraumkommunikation (wie zum Beispiel Infrarot-Datenassoziation (IrDA für engl. infrared data association) und nicht-standardisierte IR(Infrarot)-Protokolle aus dem Bereich der Unterhaltungselektronik.
  • In einer anderen Ausführungsform umfasst das mobile Gerät 53 ein Modem für Sprachband- oder Breitband-Datenkommunikation. In der Data-over-Voice-Ausführungsform kann eine als Frequenzmultiplex bekannte Technik implementiert sein, wenn der Besitzer des mobilen Geräts 53 über das Gerät sprechen kann, während Daten übertragen werden. Zu anderen Zeitpunkten, wenn der Besitzer das Gerät nicht verwendet, kann die Datenübertragung die gesamte Bandbreite verwenden (in einem Beispiel 300 Hz bis 3,4 kHz). Obwohl Frequenzmultiplex möglicherweise für analoge Mobilfunk-Kommunikation zwischen dem Fahrzeug 31 und dem Internet üblich ist und immer noch verwendet wird, wurde es für digitale Mobilfunk-Kommunikation weitgehend durch Mischformen aus Codemultiplexzugriff (CDMA für engl. Code Division Multiple Access, Zeitmultiplexzugriff (TDMA für engl. Time Division Multiple Access) und Raummultiplexzugriff (SDMA für engl. Space Division Multiple Access) ersetzt. Diese sind allesamt ITU IMT-2000(G3)-konforme Standards und bieten Datenraten bis zu 2 Mbit/s für stationäre oder gehende Benutzer und 385 kbit/s für Benutzer in einem fahrenden Fahrzeug 31. 3G-Standards werden jetzt durch IMT-Advanced (4G) ersetzt, der 200 Mbit/s für Benutzer in einem Fahrzeug 31 und 1 Gbit/s für stationäre Benutzer bietet. Falls der Benutzer über einen mit dem mobilen Gerät 53 assoziierten Datentarif verfügt, ist es möglich, dass der Datentarif Breitband-Übertragung ermöglicht und das System eine viel breitere Bandbreite verwenden könnte (was die Datenübertragung beschleunigt). In noch einer anderen Ausführungsform ist das mobile Gerät 53 durch ein zellulares Kommunikationsgerät (nicht dargestellt) ersetzt, das im Fahrzeug 31 installiert ist. In einer weiteren anderen Ausführungsform kann das ND 53 ein drahtloses LAN-Gerät sein, das zum Beispiel (und ohne Beschränkung) zur Kommunikation über ein 802.11 g-Netz (d. h. WiFi) oder ein WiMax-Netz in der Lage ist.
  • In einer Ausführungsform können eingehende Daten durch das mobile Gerät über Data-over-Voice oder Datentarif, durch den Onboard-BLUETOOTH-Transceiver und in den internen Prozessor 3 des Fahrzeugs 31 weitergeleitet werden. Im Falle bestimmter temporärer Daten zum Beispiel können die Daten bis zu einem Zeitpunkt, zu dem die Daten nicht mehr benötigt werden, auf der HDD oder anderen Speichermedien 7 gespeichert werden.
  • Zusätzliche Quellen, die über eine Schnittstelle mit dem Fahrzeug 31 verbunden sein können, umfassen ein PND 54 zum Beispiel mit einem USB-Anschluss 56 und/oder einer Antenne 58, ein Fahrzeug-Navigationsgerät 60 mit einem USB 62- oder einem anderen Anschluss, ein Onboard-GPS-Gerät 24 oder ein Fernnavigationssystem (nicht dargestellt) mit Konnektivität zum Netz 61. USB ist eines aus einer Klasse von seriellen Netzwerkprotokollen. IEEE 1394 (FireWireTM (Apple), i.LINKTM (Sony) und LynxTM (Texas Instruments)), serielle Protokolle der EIA (Electronics Industry Association), IEEE 1284 (Centronics Port), S/PDIF (Sony/Philips Digital Interconnect Format) und USB-IF (USB Implementers Forum) bilden das Rückgrat der seriellen Standards von Gerät zu Gerät. Die meisten der Protokolle können entweder für elektrische oder optische Kommunikation implementiert werden.
  • Ferner könnte die CPU 3 mit einer Vielzahl anderer Zusatzgeräte 65 in Kommunikation sein. Diese Geräte 65 können durch eine drahtlose 67 oder eine drahtgebundene 69 Verbindung verbunden sein. Die Zusatzgeräte 65 können Personal Media Player, drahtlose medizinische Geräte, tragbare Computer und dergleichen umfassen, ohne darauf beschränkt zu sein.
  • Außerdem oder alternativ könnte die CPU 3 zum Beispiel unter Verwendung eines WiFi-Transceivers (IEEE 803.11) 71 mit einem fahrzeugbasierten drahtlosen Router 73 verbunden sein. Dies könnte es der CPU ermöglichen, sich mit Fernübertragungsnetzwerken innerhalb des Bereichs des lokalen Routers 73 zu verbinden.
  • Zusätzlich dazu, dass in bestimmten Ausführungsformen beispielhafte Prozesse von einem Fahrzeug-Computersystem ausgeführt werden, das sich in einem Fahrzeug 31 befindet, können die beispielhaften Prozesse wenigstens zum Teil von einem oder mehreren Computersystemen außerhalb eines Fahrzeug-Computersystems und in Kommunikation damit ausgeführt werden. Solch ein System kann, ohne darauf beschränkt zu sein, ein drahtloses Gerät (z. B. und ohne Beschränkung ein Mobiltelefon) oder ein entferntes Computersystem (z. B. und ohne Beschränkung einen Server) umfassen, die durch das drahtlose Gerät verbunden sind. Zusammen können solche Systeme als fahrzeugassoziierte Computersysteme (VACS für engl. vehicle associated computing system) bezeichnet werden. In bestimmen Ausführungsformen können bestimmte Komponenten des VACS abhängig von der jeweiligen Implementierung des Systems bestimmte Teile eines Prozesses ausführen. Falls ein Prozess als Beispiel und ohne Beschränkung einen Schritt des Sendens oder Empfangens von Informationen an ein gekoppeltes Gerät bzw. von einem gekoppelten Gerät umfasst, dann ist es wahrscheinlich, dass das drahtlose Gerät den Prozess nicht durchführt, weil das drahtlose Gerät keine Informationen an und von sich selbst senden und empfangen würde. Ein Durchschnittsfachmann weiß, wann es unangemessen ist, ein bestimmtes VACS auf eine gegebene Lösung anzuwenden. Bei allen Lösungen wird in Betracht gezogen, dass wenigstens das VCS 1, das sich innerhalb des Fahrzeugs 31 selbst befindet, zum Durchführen der beispielhaften Prozesse in der Lage ist.
  • 2 veranschaulicht ein beispielhaftes Dienstbereitstellungsnetz 200 in Kommunikation über das Netzwerk 61 mit einem Fahrzeug 31 durch ein drahtloses Gerät in drahtloser Kommunikation mit dem Netzwerk und dem Fahrzeug. Wenn ein Fahrzeug 31 zusammengebaut wird, kann das Fahrzeug 31 verschiedene Hardware- und Softwarekomponenten umfassen. Ein VCS 1 des Fahrzeugs 31 kann so konfiguriert sein, dass es bei oder nach dem Zusammenbau Existenz- und Versionsinformationen für mindestens einen Teil dieser Hardware- und Softwarekomponenten des Fahrzeugs 31 abfragt. Unter Verwendung der abgefragten Informationen und von zusätzlichen Informationen, die das spezifische Fahrzeug 31 identifizieren (z. B. auf dem CAN-Bus veröffentlichte FIN-Informationen, Teilnehmerkennungsmodul(SIM für engl. subscriber identity module)-Informationen des Modems 63, wie beispielsweise eine internationale Mobilgerätekennung (IMEI für engl. international mobile station equipment identity) usw.), kann das VCS 1 über das Netz 61 kommunizieren, um ein Konto beim Dienstbereitstellungsnetz 200 zu erstellen. Das Dienstbereitstellungsnetz 200 kann diese Kommunikationen von den Fahrzeugen 31 empfangen und einen Datenspeicher der mit Kennungen der Fahrzeuge 31 verbundenen Hardwarekonfigurationen und Software(z. B. Firmware- usw.)-Versionen unterhalten.
  • Das Dienstbereitstellungsnetz 200 kann außerdem Veröffentlichen-/Abonnieren-Nachrichtenübermittlungsfunktionalität zur Kommunikation zwischen dem Dienstbereitstellungsnetz 200 und den Fahrzeugen 31 bereitstellen. Das Veröffentlichen-/Abonnieren-Modell kann ein oder mehrere Themen 202 verwenden, wobei die Themen 202 logische Kanäle genannt werden, durch welche Herausgeber Nachrichten 204 senden können und Abonnenten Nachrichten 204 empfangen können. Statt alle Nachrichten 204 zu empfangen, empfangen Abonnenten der Themen 202 die Nachrichten 204, die in den von ihnen abonnierten Themen 202 veröffentlicht werden, und alle Abonnenten eines Themas 202 empfangen im Wesentlichen die gleichen Themennachrichten 204. Ein Herausgeber der Nachrichten 204 kann für das Bereitstellen von Nachrichten 204 in den Themen 202 verantwortlich sein, die mit dem Thema 202 im Einklang stehen. Der Herausgeber kann zum Beispiel einen Originalgerätehersteller (OEM für engl. original equipment manufacturer) oder eine andere Instanz umfassen, der/die für die Verwaltung und/oder Aktualisierung von Fahrzeugsoftware/-firmware verantwortlich ist.
  • In einigen Fällen kann ein Fahrzeug 31 ein Herausgeber sein und Fahrzeugmeldungen an ein Thema 202 des Dienstbereitstellungsnetzes 200 senden, auf Nachrichten 204 vom Dienstbereitstellungsnetz 200 antworten oder das Dienstbereitstellungsnetz 200 über den Konnektivitätsstatus des Fahrzeugs 31 zum Netz 61 benachrichtigen. In anderen Fällen kann ein Fahrzeug 31 ein Abonnentsein und Steuernachrichten 204 oder andere Informationen von einem Dienstbereitstellungsnetz 200 empfangen.
  • Um das Veröffentlichen von Nachrichten 204 in entsprechenden Themen 202 zu erleichtern, können die Themen 202 in einem Themenbaum 206 angeordnet sein. Der Themenbaum 206 kann durch das Dienstbereitstellungsnetz 200 definiert werden, um eine Struktur der Themen 202 und Unterthemen 202 bereitzustellen, die beim Senden von Nachrichten 204 zwischen den Fahrzeugen 31 und dem Dienstbereitstellungsnetz 200 verwendet werden.
  • 3 veranschaulicht einen beispielhaften Themenbaum 206 zur Verwendung beim Aktualisieren von Softwareversionen eines VCSs 1. Der Themenbaum 206 kann zum Beispiel verwendet werden, um es dem Dienstbereitstellungsnetz 200 zu ermöglichen, eine Themen-202-Struktur zum Durchführen von Aktualisierungen der Software des Fahrzeugs 31 zu definieren. Ein VCS 1, wie beispielsweise eine Telematikeinheit eines Fahrzeugs 31, kann Knoten des Themenbaums 206 abonnieren, die der installierten Region, Software-/Firmwareversion, den installierten Merkmalen, der installierten Konfigurationsdateiversion des Fahrzeugs 31 usw. entsprechen. Es ist zu erwähnen, dass die konkrete Gestaltung des beispielhaften Themenbaums 206 nur der Veranschaulichung dient und auch andere Gestaltungen des Themenbaums 206 verwendet werden können. Zum Beispiel können durch das Dienstbereitstellungsnetz 200 andere Themenbäume 206 verwendet werden, die mehr, weniger oder verschiedene Kategorisierungsstufen aufweisen.
  • Unter Bezugnahme auf den Themenbaum 206 von 3 kann ein Regionsknoten 300 des Themenbaums 206 eine Region anzeigen, auf welche sich die Unterthemen-202-Knoten unter dem Regionsknoten 300 beziehen können. In einigen Fällen können die Regionsknoten 300 verschiedene regionale Marktbereiche darstellen, in welchen Fahrzeuge 31 verkauft werden können, wie beispielsweise Nordamerika, Europa und den Asien-Pazifik-Raum. In anderen Beispielen können sich die Regionsknoten 300 auf andere geografische Bereiche wie Länder, Staaten, Postleitzahlen, und Telefon-Vorwahlnummern als einige andere Beispiele beziehen. Durch Segmentieren des Themenbaums 206 nach Region kann das Dienstbereitstellungsnetz 200 dementsprechend verschiedene Informationen für Fahrzeuge 31 veröffentlichen, die mit verschiedenen Regionen assoziiert sind.
  • Unter jedem Regionsknoten 300 kann der Themenbaum 206 einen oder mehrere fahrzeugspezifische Knoten 302 enthalten, wobei sich jeder fahrzeugspezifische Knoten 302 auf ein Fahrzeug 31 bezieht, das mit dem Stamm-Regionsknoten 300 assoziiert ist. Als eine Möglichkeit kann das Dienstbereitstellungsnetz 200 fahrzeugspezifische Knoten 302 für Fahrzeuge 31 gemäß der Fahrgestellnummer (FIN, Fahrzeugidentifikationsnummer, engl. VIN, vehicle identification number) oder einer anderen eindeutigen Kennung von Fahrzeugen 31 erstellen, die beim Dienstbereitstellungsnetz 200 als zur jeweiligen Region gehörig registriert sind. Unterknoten der fahrzeugspezifischen Knoten 302 können verwendet werden, um die Themen 202, die zur Kommunikation an die und von den einzelnen Fahrzeugen 31 konfiguriert sind, weiter zu organisieren.
  • Zum Beispiel kann der Themenbaum 206 unter den fahrzeugspezifischen Knoten 302 ferner einen oder mehrere Fahrzeugthemenknoten 304 zur Kommunikation an die spezifischen Fahrzeuge 31 umfassen. Ein Fahrzeug 31 kann den Fahrzeugthemenknoten 304 abonnieren, welcher der FIN oder einer anderen eindeutigen Kennung des Fahrzeugs 31 entspricht, so dass das Fahrzeug 31 möglicherweise in der Lage ist, Nachrichten 204 in Themen 202 zu empfangen, die spezifisch das Fahrzeug 31 selbst betreffen.
  • Als ein Beispiel kann ein Fahrzeug 31 einen zeitsensiblen Aktualisierungs-Fahrzeugthemenknoten 304-A zum Empfangen von Nachrichten 204 für das jeweilige Fahrzeug 31 abonnieren, die von einer zeitsensiblen Beschaffenheit sind. Aufgrund ihrer zeitsensiblen Beschaffenheit können Nachrichten 204, die im zeitsensiblen Aktualisierungs-Fahrzeugthemenknoten 304-A gepostet werden, ablaufen und aus dem Thema 202 entfernt werden, wenn sie nicht innerhalb einer Zeitdauer (z. B. durch die Nachricht 204 spezifiziert, allen zeitsensiblen Nachrichten 204 gemeinsam usw.) vom Fahrzeug 31 empfangen werden. Als ein anderes Beispiel kann ein Fahrzeug 31 einen nicht-zeitsensiblen Fahrzeugthemenknoten 304-B zum Empfangen von Nachrichten 204 für das jeweilige Fahrzeug 31 abonnieren, die nicht von einer zeitsensiblen Beschaffenheit sind.
  • Aktualisierungen, wie beispielsweise Kalenderaktualisierungen, können im nicht-zeitsensiblen Fahrzeugthemenknoten 304-B gepostet werden und im Thema 202 bleiben, bis sie vom abonnierenden Fahrzeug 31 empfangen werden. Als ein weiteres Beispiel kann ein Fahrzeug 31 einen Merkmalsaktualisierungs-Fahrzeugthemenknoten 304-C zum Empfangen von Nachrichten 204 in einem Thema 202 abonnieren, die an bestimmte Fahrzeuge 31 gerichtet sind und Aktualisierungen der Merkmale 31 des Fahrzeugs 31 betreffen. In diesem Zusammenhang kann sich ein Merkmal auf ein Gruppieren von Konfigurationsparametern beziehen, die auf das spezifizierte Fahrzeug 31 anwendbar und im Themenbaum 206 enthalten sind. Ein Merkmal kann zum Beispiel Einstellungen zum Implementieren eines verfügbaren angeschlossenen Dienstes (z. B. MY FORD MOBILE) oder eine kundenspezifische Sammlung von Einstellungen (z. B. ein Paket von Merkmalen, die angefordert werden, um zur Verwendung durch einen bestimmten Fuhrparkkäufer aktiviert und/oder deaktiviert zu werden) darstellen. Als noch ein weiteres Beispiel kann ein Fahrzeug 31 einen Firmwareaktualisierungs-Fahrzeugthemenknoten 304-D zum Empfangen von Nachrichten 204 in einem Thema 202 abonnieren, die an bestimmte Fahrzeuge 31 gerichtet sind und Aktualisierungen der Firmware des Fahrzeugs 31 betreffen.
  • Die fahrzeugspezifischen Knoten 302 des Themenbaums 206 können ferner einen oder mehrere Fahrzeugthemenknoten 306 zur Kommunikation von den spezifischen Fahrzeugen 31 umfassen. Zum Beispiel kann ein Allgemeinmeldungs-Themenknoten 306-A durch ein Fahrzeug 31 zum Veröffentlichen von Nachrichten 204, wie beispielsweise Anzeigen von niedrigem Kraftstofffüllstand, Irrfahrt des Fahrzeugs 31 oder periodischen aktuellen GPS-Standorten des Fahrzeugs 31, verwendet werden. Als ein anderes Beispiel kann ein Verbindungsstatus-Themenknoten 306-B durch ein Fahrzeug 31 zum Veröffentlichen von Nachrichten 204, wie beispielsweise Verbindungsstatus des Fahrzeugs 31 (z. B. ob das Fahrzeug 31 vom Netz 61 getrennt und dann wieder daran angeschlossen wurde), verwendet werden. Als noch ein weiteres Beispiel kann ein Befehlsreaktionsmeldungs-Themenknoten 306-C durch ein Fahrzeug 31 zum Veröffentlichen von Nachrichten 24, wie beispielsweise Anzeigen von Erfolg oder Misserfolg von durch das Dienstbereitstellungsnetz 200 angeforderten Aktionen, verwendet werden.
  • Darüber hinaus kann der Themenbaum 206 unter jedem Regionsknoten 300 einen oder mehrere Hardwareversions-Themenknoten 308 umfassen, wobei sich jeder Hardwareversions-Themenknoten 308 auf eine in einem Fahrzeug 31 installierte Hardwareversion bezieht, die möglicherweise von mehreren Fahrzeugen 31 gemeinsam genutzt wird (z. B. eine Version der Hardware des VCSs 1). Diese Hardwareversions-Themenknoten 308 und Unterthemenknoten können demgemäß zur Bezugnahme auf Fahrzeuge 31 gemäß der Hardwareversion und nicht gemäß dem einzelnen Fahrzeug 31 verwendet werden.
  • Unter jedem Hardwareversions-Themenknoten 308 kann der Themenbaum 206 eine oder mehrere Firmwareversionsknoten 310 umfassen. Jeder Firmwareversionsknoten 310 kann Knoten des Themenbaums 206 organisieren, die mit einer Firmwareversion assoziiert sind, die auf der Stammhardware des Fahrzeugs 31 für eine bestimmte Region installiert werden kann.
  • Der Firmwareversionsknoten 310 kann ferner Merkmalsknoten 312 umfassen, welche Knoten des Themenbaums 206 organisieren, die mit einem bestimmten Merkmal assoziiert sind. Wie bereits erwähnt, kann ein Merkmal Einstellungen zum Implementieren eines verfügbaren angeschlossenen Dienstes oder eine kundenspezifische Sammlung von Einstellungen darstellen. Demnach kann eine Firmwareversion mehrere verschiedene Merkmale unterstützen, wobei verschiedene Teile der Funktionalität der Firmware für die verschiedenen Merkmale ein- oder ausgeschaltet werden.
  • Die Merkmalsknoten 312 können ferner Konfigurationsversionsknoten 314 umfassen, die jeweils ein Thema 202 in Bezug auf eine Konfigurationsdatei für das assoziierte Merkmal, die assoziierte Firmwareversion, Hardwareversion und Region darstellen. Die Konfigurationsdateien können Einstellungen und andere Informationen in Bezug auf Stammmerkmale umfassen, die sie konfigurieren (z. B. für die Version der Firmware, die auf der Hardwareversion für die jeweilige Region installiert ist). Da sich Einstellungen und andere Optionen von Version zu Version ändern können, können die Konfigurationsdateien außerdem eine Versionsnummer der Firmware umfassen, mit welcher sie kompatibel sind.
  • Ein Fahrzeug 31 kann Themen 202 des Themenbaums 206 abonnieren, welche die Konfiguration des Fahrzeugs 31 betreffen. Als ein Beispiel kann das Fahrzeug einen Fahrzeugthemenknoten 304 abonnieren, welcher der FIN des Fahrzeugs 31 entspricht, um Aktualisierungen zu empfangen, die für das spezifische Fahrzeug 31 bestimmt sind. Als ein anderes Beispiel kann ein VSC 1 eines Fahrzeugs 31 einen Konfigurationsversionsknoten 314 des Themenbaums 206 abonnieren, um Konfigurations- oder andere Aktualisierungen zu empfangen, die der installierten Region, Hardwareversion, Firmwareversion, einem installierten Merkmal und der installierten globalen Konfigurationsversion des Fahrzeugs 31 entsprechen. Das abonnierende Fahrzeug 31 kann Nachrichten 204, die in den abonnierten Themen 202 veröffentlicht werden, prüfen oder anderweitig darüber informiert werden.
  • Das Dienstbereitstellungsnetz 200 kann Nachrichten 204 in den Themen 202 des Themenbaums 206 veröffentlichen, für welche Aktualisierungen durchgeführt werden sollen. Als eine Möglichkeit kann das Dienstbereitstellungsnetz 200 eine Nachricht 204 in einem Fahrzeugthemenknoten 304 veröffentlichen, um zu bewirken, dass ein bestimmtes Fahrzeug 31 informiert wird, dass eine Aktualisierung für das Fahrzeug 31 durchgeführt werden sollte. Als eine andere Möglichkeit kann das Dienstbereitstellungsnetz 200 eine Nachricht 204 im Konfigurationsversionsknoten 314 veröffentlichen, um zu bewirken, dass jedes abonnierende Fahrzeug 31 mit einer bestimmten, Region, Hardwareversion, Firmwareversion, einem bestimmten Merkmal und einer bestimmten globalen Konfigurationsversion eine Aktualisierung durchführt.
  • In einigen Beispielen kann eine Aktualisierung durch ein Dienstbereitstellungsnetz 200, das eine neue Konfigurationsdatei im abonnierten Thema 202 veröffentlicht, als die Nachricht 204 angezeigt werden, wobei die neue Konfigurationsdatei mit einer aktualisierten Version der Software oder Firmware assoziiert sein kann. Ein Fahrzeug 31, das die Konfigurationsdatei empfängt, kann die Version der Konfigurationsdatei identifizieren und eine gewünschte Software- oder Firmwareversion für das Fahrzeug 31 so festlegen, dass sie die der Version der Konfigurationsdatei ist. Bei Gewahrwerden einer Aktualisierungsbenachrichtigungsnachricht 204 in einem abonnierten Knoten des Themenbaums 206 kann das Fahrzeug 31 daher erkennen, dass es seine Softwareversion auf die durch die Benachrichtigung spezifizierte Version aktualisieren sollte.
  • Das Fahrzeug 31 kann ferner den Themenbaum 206 verwenden, um Aktualisierungsnachrichten 204 in Bezug auf den Status der Softwareaktualisierung an das Dienstbereitstellungsnetz 200 zu übermitteln. Zum Beispiel kann das Fahrzeug 31 Meldungsnachrichten 204 in einem Meldungs-Fahrzeugthemenknoten 304 veröffentlichen, die anzeigen, ob die Softwareaktualisierung erfolgreich war oder nicht, und außerdem die neu installierte Version der Software des Fahrzeugs 31 an das Dienstbereitstellungsnetz 200 melden. Demgemäß ist das Dienstbereitstellungsnetz 200 durch Verwenden des Themenbaums 206 möglicherweise in der Lage, Aktualisierungen für einzelne Fahrzeuge 31 oder für Fahrzeuge 31 mit spezifischen Konfigurationen anzufordern.
  • Eine Softwareanwendung kann von einer älteren Version auf eine neuere Version aktualisiert werden, indem jene Teile, die sich von der früheren Version geändert haben, aktualisiert werden, statt dass die alte Version deinstalliert und die neue Version installiert wird. Diese inkrementellen Aktualisierungen werden als Delta- oder Differenzialaktualisierungen bezeichnet. Eine inkrementelle Aktualisierung kann angewendet werden, um ein Softwaremodul oder eine Softwareanwendung von einer Version auf eine nächste Version zu aktualisieren. In einigen Fällen kann die Software mehrere Version veraltet älter als die neueste sein und iteratives Aktualisieren von der alten installierten Version auf die aktuelle Version durch die geordnete Anwendung von mehreren inkrementellen Aktualisierungen erfordern. Der inkrementelle Ansatz kann bestimmte Vorteile gegenüber Vollaktualisierungen aufweisen, wie beispielsweise reduzierten Netzwerkverkehr für heruntergeladene Versionsaktualisierungen sowie einfacheres Testen von Versionsaktualisierungen von der früheren Version im Vergleich zum Testen von allen früheren Versionen der Software. Jeder Ansatz kann so verwendet werden, wie es für eine bestimmte Situation angebracht ist.
  • 4A veranschaulicht einen beispielhaften Themenbaum für eine Softwarekomponente eines Fahrzeugs 31, in welchem im praktischen Einsatz mehrere Versionen installiert werden. Zum Beispiel kann ein Softwaremodul im praktischen Einsatz einige Fahrzeuge 31 mit Version 1, andere mit Version 2 und noch andere mit Version 3 aufweisen. Es wird möglicherweise ein Fehler oder ein anderes Problem identifiziert, der/das die Softwareversionen 1 und 2 betrifft, aber nicht Version 3, Eine neue Version der Software, Version 4, kann erstellt werden, um das Problem in Version 1 und 2 zu beheben (und möglicherweise alle Probleme zu beheben, die durch das Problem möglicherweise verursacht wurden). Da Fahrzeuge 31 mit Software mit Version 3 nicht betroffen sind, ist es für diese Fahrzeuge 31 möglicherweise nicht wünschenswert, Version 4 herunterzuladen und sie auf Version 4 zu aktualisieren. Es kann jedoch sein, dass Fahrzeuge 31 mit Version 1 und 2 unter Verwendung eines inkrementellen Aktualisierungsansatzes durch Version 3 aktualisiert werden müssen, um Version 4 zu erreichen.
  • 4B veranschaulicht einen beispielhaften Themenbaum 206 zum inkrementellen Aktualisieren von Versionen einer Softwarekomponente eines Fahrzeugs 31. Das Dienstbereitstellungsnetz 200 kann den Themenbaum 206 verwenden, um die Fahrzeuge mit Version 1 und 2 auf Version 4 zu aktualisieren, während die Fahrzeuge 31 mit Version 3 nicht aktualisiert werden.
  • Zum Beispiel kann das Dienstbereitstellungsnetz 200 Aktualisierungsbenachrichtigungen in Konfigurationsversionsknoten-314-Themen 202 für Fahrzeuge 31, welche Version 1 und 2 installiert haben, veröffentlichen, aber nicht in den Konfigurationsknoten-314-Themen 202 für Fahrzeuge 31, welche Version 3 installiert haben. Die Aktualisierungsbenachrichtigungen können Konfigurationsdateien 208 umfassen, die mit Version 4 der Software assoziiert sind, so dass die Fahrzeuge 31 mit Version 1 und 2, welche die Benachrichtigungen empfangen, eine gewünschte Software- oder Firmwareversion für das Fahrzeug 31 auf Version 4 festlegen könnent. Das Dienstbereitstellungsnetz 200 kann ferner inkrementelle Softwareaktualisierungen 400 in den Firmwareversionsknoten 310 veröffentlichen. Zum Beispiel kann das Dienstbereitstellungsnetz 200 eine inkrementelle Softwareaktualisierung 400-A von Version 1 auf Version 2 im Firmwareversionsknoten 310 für Version 1, eine inkrementelle Softwareaktualisierung 400-B von Version 2 auf Version 3 im Firmwareversionsknoten 310 für Version 2 und eine inkrementelle Softwareaktualisierung 400-C von Version 3 auf Version 4 im Firmwareversionsknoten 310 für Version 3 veröffentlichen.
  • Da die Fahrzeuge 31 bei Version 3 keine Konfigurationsdateien 208 empfangen, die mit Version 4 assoziiert sind, legen die Fahrzeuge 31 bei Version 3 ihre gewünschte Version nicht auf 4 fest. Demgemäß versuchen die Fahrzeuge 31, die ursprünglich bei Version 3 sind, in diesem Beispiel nicht, auf Version 4 zu aktualisieren, auch wenn eine Softwareaktualisierung von Version 3 auf Version 4 veröffentlicht wird.
  • Ein Fahrzeug 31 bei Version 1, das die Benachrichtigungen empfängt, erkennt möglicherweise, dass sich die gewünschte Softwareversion (d. h. Version 4) und die installierte Softwareversion (d. h. Version 1) unterscheiden. Wenn dies der Fall ist, kann das Fahrzeug 31 das Firmwareversionsknoten-310-Thema 202 des Themenbaums 206 abonnieren, welcher der Region und der installierten Firmwareversion der Fahrzeugs 31 (d. h. Version 1) entspricht. Das Fahrzeug 31, das den Firmwareversionsknoten 310 für Version 1 abonniert, kann die veröffentlichte Benachrichtigung der inkrementellen Softwareaktualisierung 400-A von Version 1 auf Version 2 empfangen und die inkrementelle Aktualisierung 400-A herunterladen und installieren. Bei erfolgreicher Installation kann das Fahrzeug 31 nun bei Version 2 der Software sein. Da das Fahrzeug nun bei Version 2 ist, kann das Fahrzeug 31 das Abonnement für Konfigurationsversionsknoten 314 des Themenbaums 206, der mit Version 1 in Beziehung steht, und den Firmwareversionsknoten 310 für Version 1 beenden und den Konfigurationsversionsknoten 314 des Themenbaums 206 abonnieren, der mit Version 2 in Beziehung steht.
  • Das Fahrzeug 31, das nun bei Version 2 ist (oder ein anderes Fahrzeug 31, das im Beispiel ursprünglich bei Version 2 war), erkennt möglicherweise, dass sich die gewünschte Softwareversion (d. h. Version 4) und die installierte Softwareversion (d. h. Version 2) weiterhin unterscheiden. Wenn dies der Fall ist, kann das Fahrzeug 31 das Firmwareversionsknoten-310-Thema 202 des Themenbaums 206 abonnieren, welcher der Region und der installierten Firmwareversion der Fahrzeugs 31 (d. h. Version 2) entspricht. Das Fahrzeug 31 kann demgemäß die veröffentlichte Benachrichtigung der inkrementellen Softwareaktualisierung 400-B von Version 2 auf Version 3 empfangen und die inkrementelle Aktualisierung 400-B herunterladen und installieren. Bei erfolgreicher Installation kann das Fahrzeug 31 nun bei Version 3 der Software sein. Da das Fahrzeug nun bei Version 3 ist, kann das Fahrzeug 31 das Abonnement für den Konfigurationsversionsknoten 314 des Themenbaums 206, der mit Version 2 in Beziehung steht, und den Firmwareversionsknoten 310 für Version 2 beenden und den Konfigurationsversionsknoten 314 des Themenbaums 206 abonnieren, der mit Version 3 in Beziehung steht.
  • Das Fahrzeug 31, das nun bei Version 3 ist, erkennt möglicherweise, dass sich die gewünschte Softwareversion (d. h. Version 4) und die installierte Softwareversion (d. h. Version 3) weiterhin unterscheiden. Wenn dies der Fall ist, kann das Fahrzeug 31 den Firmwareversionsknoten-310-Thema 202 des Themenbaums 206 abonnieren, welcher der Region und der installierten Firmwareversion der Fahrzeugs 31 (d. h. Version 3) entspricht. Das Fahrzeug 31 kann demgemäß die veröffentlichte Benachrichtigung der inkrementellen Softwareaktualisierung 400-B von Version 3 auf Version 4 empfangen und die inkrementelle Aktualisierung 400-B herunterladen und installieren. Bei erfolgreicher Installation kann das Fahrzeug 31 nun bei Version 4 der Software sein. Da das Fahrzeug nun bei Version 4 ist, kann das Fahrzeug 31 das Abonnement für den Konfigurationsversionsknoten 314 des Themenbaums 206, der mit Version 3 in Beziehung steht, und den Firmwareversionsknoten 310 für Version 3 beenden und den Konfigurationsversionsknoten 314 des Themenbaums 206 abonnieren, der mit Version 4 in Beziehung steht.
  • Da die gewünschte Softwareversion und die installierte Softwareversion jetzt übereinstimmen, ist das Fahrzeug 31 nun aktualisiert. In einigen Fällen kann das VCS 1 ferner so konfiguriert sein, dass es eine Veröffentlichung einer Nachricht 204 in einem Befehlsreaktionsmeldungs-Themenknoten 306-C des Fahrzeugs 31 bereitstellt, um dem Dienstbereitstellungsnetz 200 den Erfolg der Softwareaktualisierung zu melden.
  • Die Fahrzeuge 31, die ursprünglich bei Version 3 waren, erkennen möglicherweise, dass die gewünschte Softwareversion (d. h. Version 3) und die installierte Softwareversion (d. h. Version 3) gleich sind, und können wählen, keine Softwareaktualisierung durchzuführen. Wenn jedoch die Fahrzeuge 31 bei Version 3 zu einem späteren Zeitpunkt eine aktualisierte Konfigurationsdatei empfangen, die zu einer Aktualisierung auf Version 4 oder höher auffordert, können die Fahrzeuge 31 das Firmwareversionsknoten-310-Thema 202 des Themenbaums 206 abonnieren, das der Region und der installierten Firmwareversion des Fahrzeugs 31 (d. h. Version 3) entspricht und die Aktualisierung installieren.
  • 5 veranschaulicht einen beispielhaften Prozess 500 zum Aktualisieren einer Softwareversion einer Komponente des VCSs 1. Der Prozess 500 kann zum Beispiel durch ein VCS 1 eines Fahrzeugs 31 in Kommunikation mit einem Dienstbereitstellungsnetz 200 über ein Netz 61 durchgeführt werden.
  • Bei Block 502 abonniert das VCS 1 ein Thema 202 eines Themenbaums 206, das mit einer Softwareversion einer Komponente der Fahrzeuge 31 assoziiert ist. Zum Beispiel kann das VCS 1 für eine Firmwarekomponente des Fahrzeugs 31 einen Konfigurationsversionsknoten 314 abonnieren, der ein Thema 202 des Themenbaums 206 darstellt, das vom Dienstbereitstellungsnetz 200 bedient wird und mit der installierten Version, installierten Merkmalen und der installierten Region der Firmwarekomponente des Fahrzeugs 31 in Beziehung steht.
  • Bei Entscheidungspunkt 504 bestimmt das VCS 1, ob eine Benachrichtigungsnachricht 204 im abonnierten Thema 202 empfangen wird. Zum Beispiel kann das Dienstbereitstellungsnetz 200 eine Benachrichtigungsnachricht 204 im Konfigurationsversionsknoten 314 veröffentlichen, und das Fahrzeug 31 kann von der Benachrichtigungsnachricht 204 benachrichtigt werden oder diese anderweitig empfangen. Wenn eine Benachrichtigungsnachricht 204 empfangen wird, geht die Steuerung zu Block 506 weiter. Andernfalls bleibt die Steuerung bei Entscheidungspunkt 504.
  • Bei Block 506 identifiziert das VCS 1 eine gewünschte Softwareversion für die Softwarekomponente basierend auf der Benachrichtigungsnachricht 204. Zum Beispiel kann die Benachrichtigungsnachricht 204 eine neue Konfigurationsdatei sein oder umfassen, wobei die neue Konfigurationsdatei mit einer aktualisierten Version der Firmware assoziiert sein kann. Die Konfigurationsdatei kann eine Versionsnummer der Firmware oder eine andere Versionsanzeige umfassen, mit welcher die Datei kompatibel ist. Ein Fahrzeug 31, das die Konfigurationsdatei empfängt, kann die Version der Konfigurationsdatei identifizieren und eine gewünschte Softwareversion für das Fahrzeug 31 so festlegen, dass sie die der Version der Konfigurationsdatei ist.
  • Bei Entscheidungspunkt 508 bestimmt das VCS 1, ob sich die gewünschte Softwareversion und die installierte Softwareversion unterscheiden. Zum Beispiel kann das VCS 1 bestimmen, dass die Version der Konfigurationsdatei höher als die installierte Version der Firmware ist. Wenn dies der Fall ist, geht die Steuerung zu Block 510 weiter, um eine Softwareaktualisierung durchzuführen. Wenn nicht, dann ist keine Softwareaktualisierung erforderlich, und die Steuerung geht zu Entscheidungspunkt 504 über. Wenn die Version der Konfigurationsdatei niedriger als die installierte Version ist, dann kann das VCS 1 die Konfigurationsdatei verwerfen, gegebenenfalls einen Fehler an das Dienstbereitstellungsnetz 200 zurück übermitteln und die Steuerung entweder zu Entscheidungspunkt 504 übergehen lassen oder den Prozess 500 beenden.
  • Bei Block 510 ruft das VCS 1 eine nächste inkrementelle Softwareaktualisierung ab. Zum Beispiel kann das Fahrzeug 31 das Firmwareversionsknoten-310-Thema 202 des Themenbaums 206 abonnieren, das der installierten Firmwareversion des Fahrzeugs 31 entspricht. Das Dienstbereitstellungsnetz 200 kann eine Softwareaktualisierung im Firmwareversionsknoten 310 veröffentlichen, und das abonnierende Fahrzeug 31 kann die Softwareaktualisierung herunterladen.
  • Bei Block 512 installiert das VCS 1 die Softwareaktualisierung. Zum Beispiel kann die VCS 1 die Firmwareaktualisierung ausführen oder anderweitig auf die installierte Firmwareversion anwenden, um die Firmwareversion zu aktualisieren. In einigen Fällen kann das VCS 1 ferner so konfiguriert sein, dass es eine Veröffentlichung einer Nachricht 204 in einem Befehlsreaktionsmeldungs-Themenknoten 306-C des Fahrzeugs 31 bereitstellt, um dem Dienstbereitstellungsnetz 200 den Erfolg oder Misserfolg der Softwareaktualisierung zu melden. Bei Empfang einer Nachricht 204, die den Erfolg der Softwareaktualisierung anzeigt, kann das Dienstbereitstellungsnetz 200 seine Aufzeichnungen des installierten Konfigurationsstatus des Fahrzeugs 31 aktualisieren. Als eine andere Möglichkeit kann das VCS 1, wenn die Softwareaktualisierung fehlschlägt, eine Fehlernachricht 204 im Befehlsreaktionsmeldungs-Themenknoten 306-C veröffentlichen, und der Prozess 500 kann enden oder möglicherweise die Steuerung zu Block 510 übergehen lassen, um den Download und die Installation erneut zu versuchen.
  • Bei Block 514 aktualisiert das Fahrzeug 1 die Themen-202-Abonnements des Fahrzeugs 31. Zum Beispiel kann das VCS 1 das Fahrzeug 31 veranlassen, das Abonnement für den Konfigurationsversionsmodus 314 des Themenbaums 206 und den Firmwareversionsknoten 310 für die alte Version abzubestellen, und den Konfigurationsversionsknoten 314 des Themenbaums 206 zu abonnieren, der mit neuen installierten Version der Firmware in Beziehung steht. Nach Block 514 geht die Steuerung zu Entscheidungspunkt 508 über.
  • Demnach kann ein Dienstbereitstellungsnetz 200 einen Themenbaum 206 zum selektiven Bereitstellen von Aktualisierungen für Fahrzeuge 31 gemäß einer installierten Softwareversion, wie beispielsweise einer Firmwareversion eines Moduls des Fahrzeugs 31 oder einer Softwareversion einer im VCS 1 installierten Anwendung, verwenden, ohne die Fahrzeug-31-Installationen von Softwareversionen auf Fahrzeugen 31 von verschiedenen Versionen zu beeinträchtigen. Außerdem können diese Aktualisierungen für die Fahrzeuge 31 inkrementell und automatisch über den Äther bereitgestellt werden, ohne dass Kosten für Techniker des Herstellers oder Händlers entstehen.
  • Obgleich oben beispielhafte Ausführungsformen beschrieben werden, ist nicht beabsichtigt, dass diese Ausführungsformen alle möglichen Formen der Erfindung beschreiben. Stattdessen dienen die in der Beschreibung verwendeten Ausdrücke der Beschreibung und nicht der Einschränkung, und es versteht sich, dass verschiedene Änderungen durchgeführt werden können, ohne von dem Gedanken und Schutzbereich der Erfindung abzuweichen. Darüber hinaus können die Merkmale verschiedener Implementierungsausfü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 (Institute of Electrical and Electronics Engineers) 802 [0024]
    • IEEE 802 LAN(local area network)-Protokolle [0024]
    • IEEE 802 [0024]
    • IEEE 1394 [0027]
    • IEEE 1284 [0027]

Claims (20)

  1. Computerimplementiertes Verfahren, umfassend: Abonnieren eines ersten Themenbaumthemas, das mit einer installierten Fahrzeug-Softwarekomponentenversion assoziiert ist; Identifizieren einer gewünschten Softwarekomponentenversion basierend auf einer veröffentlichten Benachrichtigung, die vom ersten Thema abgerufen wird; und Aktualisieren, wenn sich die gewünschte Version und die installierte Version unterscheiden, einer Softwarekomponente unter Verwendung einer Softwareaktualisierung, die von einem zweiten Themenbaumthema abgerufen wird, das mit Softwareaktualisierungen für die installierte Version assoziiert ist.
  2. Verfahren nach Anspruch 1, ferner umfassend: Beenden des Abonnements des ersten Themenbaumthemas; und Abonnieren eines dritten Themenbaumthemas, das mit einer Version der Softwarekomponente assoziiert ist, nach Anwendung der Softwareaktualisierung.
  3. Verfahren nach Anspruch 1, ferner umfassend ein Abonnieren des zweiten Themas des Themenbaums, wenn festgestellt wird, dass sich die gewünschte Version und die installierte Version unterscheiden.
  4. Verfahren nach Anspruch 1, ferner umfassend ein Beenden des Abonnements des zweiten Themas des Themenbaums bei erfolgreichem Aktualisieren der Softwarekomponente unter Verwendung der Softwareaktualisierung.
  5. Verfahren nach Anspruch 1, ferner umfassend ein Ignorieren einer Softwareaktualisierung, die im zweiten Thema des Themenbaums veröffentlicht wird, bis zum Empfang der Benachrichtigung der gewünschten Version im Thema.
  6. Verfahren nach Anspruch 1, wobei die veröffentlichte Benachrichtigung im Thema eine Konfigurationsdatei umfasst, und ferner umfassend ein Bestimmen der gewünschten Version gemäß einem Versionsstand der Software, mit welchem die Konfigurationsdatei kompatibel ist.
  7. Verfahren nach Anspruch 6, ferner umfassend ein Identifizieren des Versionsstands der Software, mit welchem die Konfigurationsdatei kompatibel ist, gemäß einer Versionsangabe, die in der Konfigurationsdatei enthalten ist.
  8. Fahrzeug, umfassend: ein fahrzeugbasiertes Computersystem, das konfiguriert ist zum: Abonnieren eines ersten Themenbaumthemas, das mit einer installierten Fahrzeug-Softwarekomponentenversion assoziiert ist; Identifizieren einer gewünschten Softwarekomponentenversion basierend auf einer veröffentlichten Benachrichtigung, die vom ersten Thema abgerufen wird; und, wenn sich die gewünschte Version und die installierte Version unterscheiden, Aktualisieren einer Softwarekomponente unter Verwendung einer Softwareaktualisierung, die von einem zweiten Themenbaumthema abgerufen wird, das mit Softwareaktualisierungen für die installierte Version assoziiert ist.
  9. Fahrzeug nach Anspruch 8, wobei das fahrzeugbasierte Computersystem ferner konfiguriert ist zum: Beenden eines Abonnements des ersten Themenbaumthemas; und Abonnieren eines dritten Themenbaumthemas, das mit einer Version der Softwarekomponente assoziiert ist, nach Anwendung der Softwareaktualisierung.
  10. Fahrzeug nach Anspruch 8, wobei das fahrzeugbasierte Computersystem ferner so konfiguriert ist, dass es das zweite Thema des Themenbaums abonniert, wenn festgestellt wird, dass sich die gewünschte Version und die installierte Version unterscheiden.
  11. Fahrzeug nach Anspruch 8, wobei das fahrzeugbasierte Computersystem ferner so konfiguriert ist, dass es das Abonnement des zweiten Themas des Themenbaums bei erfolgreichem Aktualisieren der Softwarekomponente unter Verwendung der Softwareaktualisierung beendet.
  12. Fahrzeug nach Anspruch 8, wobei das fahrzeugbasierte Computersystem ferner so konfiguriert ist, dass es eine Softwareaktualisierung, die im zweiten Thema des Themenbaums veröffentlicht wird, bis zum Empfang der Benachrichtigung der gewünschten Version im Thema ignoriert.
  13. Fahrzeug nach Anspruch 8, wobei die veröffentlichte Benachrichtigung im Thema eine Konfigurationsdatei umfasst, und wobei das fahrzeugbasierte Computersystem ferner so konfiguriert ist, dass es die gewünschte Version gemäß einem Versionsstand der Software bestimmt, mit welchem die Konfigurationsdatei kompatibel ist.
  14. Fahrzeug nach Anspruch 13, wobei das fahrzeugbasierte Computersystem ferner so konfiguriert ist, dass es den Versionsstand der Software, mit welchem die Konfigurationsdatei kompatibel ist, gemäß einer Versionsangabe identifiziert, die in der Konfigurationsdatei enthalten ist.
  15. Nicht-flüchtiges computerlesbares Speichermedium, welches Anweisungen speichert, die bei Ausführung durch einen Prozessor den Prozessor konfigurieren zum: Abonnieren eines ersten Themenbaumthemas, das mit einer installierten Fahrzeug-Softwarekomponentenversion assoziiert ist; Identifizieren einer gewünschten Softwarekomponentenversion basierend auf einer veröffentlichten Benachrichtigung, die vom ersten Thema abgerufen wird; und, wenn sich die gewünschte Version und die installierte Version unterscheiden, Aktualisieren einer Softwarekomponente unter Verwendung einer Softwareaktualisierung, die von einem zweiten Themenbaumthema abgerufen wird, das mit Softwareaktualisierungen für die installierte Version assoziiert ist.
  16. Computerlesbares Speichermedium nach Anspruch 15, das außerdem Anweisungen speichert, um den Prozessor zu konfigurieren zum: Beenden eines Abonnements des ersten Themenbaumthemas; und Abonnieren eines dritten Themenbaumthemas, das mit einer Version der Softwarekomponente assoziiert ist, nach Anwendung der Softwareaktualisierung.
  17. Computerlesbares Speichermedium nach Anspruch 15, das außerdem Anweisungen speichert, um den Prozessor so zu konfigurieren, dass er das zweite Thema des Themenbaums abonniert, wenn festgestellt wird, dass sich die gewünschte Version und die installierte Version unterscheiden.
  18. Computerlesbares Speichermedium nach Anspruch 15, das außerdem Anweisungen speichert, um den Prozessor so zu konfigurieren, dass er das Abonnement des zweiten Themas des Themenbaums bei erfolgreichem Aktualisieren der Softwarekomponente unter Verwendung der Softwareaktualisierung beendet.
  19. Computerlesbares Speichermedium nach Anspruch 15, das außerdem Anweisungen speichert, um den Prozessor so zu konfigurieren, dass er eine Softwareaktualisierung, die im zweiten Thema des Themenbaums veröffentlicht wird, bis zum Empfang der Benachrichtigung der gewünschten Version im Thema ignoriert.
  20. Computerlesbares Speichermedium nach Anspruch 15, wobei die veröffentlichte Benachrichtigung im Thema eine Konfigurationsdatei umfasst, und das außerdem Anweisungen speichert, um den Prozessor so zu konfigurieren, dass er die gewünschte Version gemäß einem Versionsstand der Software bestimmt, mit welchem die Konfigurationsdatei kompatibel ist.
DE102014118910.8A 2014-01-09 2014-12-17 Autonome globale Softwareaktualisierung Pending DE102014118910A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US14/151,526 US9766874B2 (en) 2014-01-09 2014-01-09 Autonomous global software update
US14/151,526 2014-01-09

Publications (1)

Publication Number Publication Date
DE102014118910A1 true DE102014118910A1 (de) 2015-07-09

Family

ID=53443220

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102014118910.8A Pending DE102014118910A1 (de) 2014-01-09 2014-12-17 Autonome globale Softwareaktualisierung

Country Status (3)

Country Link
US (1) US9766874B2 (de)
CN (1) CN104778056B (de)
DE (1) DE102014118910A1 (de)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10967902B2 (en) 2017-05-08 2021-04-06 Volkswagen Ag Method for calibrating the steering angle sensor of a motor vehicle
US11855831B1 (en) 2022-06-10 2023-12-26 T-Mobile Usa, Inc. Enabling an operator to resolve an issue associated with a 5G wireless telecommunication network using AR glasses
US11962455B2 (en) 2021-11-29 2024-04-16 T-Mobile Usa, Inc. Prioritizing multiple issues associated with a wireless telecommunication network
US12039471B2 (en) 2021-11-29 2024-07-16 T-Mobile Usa, Inc. Tracking issues and resolution of same in a wireless communication network

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11669090B2 (en) 2014-05-20 2023-06-06 State Farm Mutual Automobile Insurance Company Autonomous vehicle operation feature monitoring and evaluation of effectiveness
US10373259B1 (en) 2014-05-20 2019-08-06 State Farm Mutual Automobile Insurance Company Fully autonomous vehicle insurance pricing
US10599155B1 (en) 2014-05-20 2020-03-24 State Farm Mutual Automobile Insurance Company Autonomous vehicle operation feature monitoring and evaluation of effectiveness
US9972054B1 (en) 2014-05-20 2018-05-15 State Farm Mutual Automobile Insurance Company Accident fault determination for autonomous vehicles
US9792656B1 (en) 2014-05-20 2017-10-17 State Farm Mutual Automobile Insurance Company Fault determination with autonomous feature use monitoring
US10540723B1 (en) 2014-07-21 2020-01-21 State Farm Mutual Automobile Insurance Company Methods of providing insurance savings based upon telematics and usage-based insurance
US9946531B1 (en) 2014-11-13 2018-04-17 State Farm Mutual Automobile Insurance Company Autonomous vehicle software version assessment
DE102015203766A1 (de) * 2015-03-03 2016-09-08 Robert Bosch Gmbh Teilsystem für ein Fahrzeug und entsprechendes Fahrzeug
US9805601B1 (en) 2015-08-28 2017-10-31 State Farm Mutual Automobile Insurance Company Vehicular traffic alerts for avoidance of abnormal traffic conditions
CN105610959B (zh) * 2016-01-14 2019-02-19 中电长城网际系统应用有限公司 一种信息发布订阅平台及方法和信息发布订阅系统
US10308246B1 (en) 2016-01-22 2019-06-04 State Farm Mutual Automobile Insurance Company Autonomous vehicle signal control
US10395332B1 (en) 2016-01-22 2019-08-27 State Farm Mutual Automobile Insurance Company Coordinated autonomous vehicle automatic area scanning
US11719545B2 (en) 2016-01-22 2023-08-08 Hyundai Motor Company Autonomous vehicle component damage and salvage assessment
US11441916B1 (en) 2016-01-22 2022-09-13 State Farm Mutual Automobile Insurance Company Autonomous vehicle trip routing
US10134278B1 (en) 2016-01-22 2018-11-20 State Farm Mutual Automobile Insurance Company Autonomous vehicle application
US11242051B1 (en) 2016-01-22 2022-02-08 State Farm Mutual Automobile Insurance Company Autonomous vehicle action communications
US10324463B1 (en) 2016-01-22 2019-06-18 State Farm Mutual Automobile Insurance Company Autonomous vehicle operation adjustment based upon route
US10235154B2 (en) 2016-03-09 2019-03-19 Ford Global Technologies, Llc Over-the-air trigger to vehicle interrogator updates
US20170315797A1 (en) * 2016-05-02 2017-11-02 Ford Global Technologies, Llc Vehicle connection location regional software delivery
US10318269B2 (en) * 2016-05-04 2019-06-11 General Motors Llc Providing vehicle system module updates
CN106598636A (zh) * 2016-07-14 2017-04-26 深圳曼塔智能科技有限公司 用于无人机的固件升级方法及装置
CN112740172B (zh) * 2019-12-31 2022-05-17 华为技术有限公司 管理车辆中电子设备软件版本的方法及相关设备
CN112068871B (zh) * 2020-08-12 2021-09-14 海信集团有限公司 电子设备和应用的管理方法
JP2023543476A (ja) * 2020-09-30 2023-10-16 ホアウェイ・テクノロジーズ・カンパニー・リミテッド 車両内の電子デバイスのソフトウェアセキュリティを検証するための方法および関連するデバイス
US11700178B2 (en) 2020-10-30 2023-07-11 Nutanix, Inc. System and method for managing clusters in an edge network
US11290330B1 (en) 2020-10-30 2022-03-29 Nutanix, Inc. Reconciliation of the edge state in a telemetry platform
US11481269B2 (en) 2020-10-30 2022-10-25 Nutanix, Inc. Recommendation engine based on classification of virtualized workload
US11556329B2 (en) * 2020-11-16 2023-01-17 Ford Global Technologies, Llc System for updating vehicle software
US11887411B2 (en) * 2021-01-27 2024-01-30 Amazon Technologies, Inc. Vehicle data extraction service
US11782690B2 (en) * 2021-06-29 2023-10-10 Dell Products L.P. Delivering applications over-the-air while supporting original equipment manufacturer markers
US11902374B2 (en) 2021-11-29 2024-02-13 Amazon Technologies, Inc. Dynamic vehicle data extraction service
CN114326679B (zh) * 2021-12-30 2023-07-18 深蓝汽车科技有限公司 一种基于一版集成软件刷写控制器的方法及系统
US12047253B2 (en) 2022-02-11 2024-07-23 Nutanix, Inc. System and method to provide priority based quality of service for telemetry data
US11765065B1 (en) 2022-03-23 2023-09-19 Nutanix, Inc. System and method for scalable telemetry

Family Cites Families (110)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5155847A (en) 1988-08-03 1992-10-13 Minicom Data Corporation Method and apparatus for updating software at remote locations
US7672756B2 (en) 1995-06-07 2010-03-02 Automotive Technologies International, Inc. Vehicle communications using the internet
US9443358B2 (en) 1995-06-07 2016-09-13 Automotive Vehicular Sciences LLC Vehicle software upgrade techniques
US6694248B2 (en) 1995-10-27 2004-02-17 Total Technology Inc. Fully automated vehicle dispatching, monitoring and billing
US20020150050A1 (en) 1999-06-17 2002-10-17 Nathanson Martin D. Automotive telemetry protocol
US6035423A (en) * 1997-12-31 2000-03-07 Network Associates, Inc. Method and system for providing automated updating and upgrading of antivirus applications using a computer network
US6263360B1 (en) * 1998-06-01 2001-07-17 Sri International System uses filter tree and feed handler for updating objects in a client from a server object list
GB9826873D0 (en) 1998-12-07 1999-01-27 Simoco Int Ltd Position monitoring system
EP1852836A3 (de) 1999-05-26 2011-03-30 Johnson Controls Technology Company Drahtloses Kommunikationssystem und -verfahren
US7797367B1 (en) 1999-10-06 2010-09-14 Gelvin David C Apparatus for compact internetworked wireless integrated network sensors (WINS)
US6611755B1 (en) 1999-12-19 2003-08-26 Trimble Navigation Ltd. Vehicle tracking, communication and fleet management system
US6359570B1 (en) 1999-12-22 2002-03-19 Intelligent Vehicle Systems, Inc. Vehicle-status device and system for remotely updating and locally indicating the status of a vehicle
US20050203673A1 (en) 2000-08-18 2005-09-15 Hassanayn Machlab El-Hajj Wireless communication framework
US7092803B2 (en) 2000-08-18 2006-08-15 Idsc Holdings, Llc Remote monitoring, configuring, programming and diagnostic system and method for vehicles and vehicle components
US6704564B1 (en) 2000-09-22 2004-03-09 Motorola, Inc. Method and system for controlling message transmission and acceptance by a telecommunications device
US7171661B1 (en) * 2000-10-19 2007-01-30 International Business Machines Corporation Realtime configuration updates and software distribution to active client positions
US6973229B1 (en) * 2001-02-28 2005-12-06 Lambda Opticalsystems Corporation Node architecture for modularized and reconfigurable optical networks, and methods and apparatus therefor
AU2002307895A1 (en) * 2001-05-03 2002-11-18 Sun Microsystems, Inc. Lookup facility in distributed computer systems
US7055149B2 (en) 2001-07-25 2006-05-30 Lenovo (Singapore) Pte Ltd. Method and apparatus for automating software upgrades
US7155321B2 (en) 2001-08-06 2006-12-26 Idsc Holdings Llc System, method and computer program product for remote vehicle diagnostics, monitoring, configuring and reprogramming
US7209859B2 (en) 2002-03-02 2007-04-24 Linxberg Technology, Llc Method and apparatus for sequentially collecting and analyzing real time data with interactive monitoring
US20040010358A1 (en) 2002-07-12 2004-01-15 General Motors Corporation Vehicle personalization through web portal
US20040034624A1 (en) * 2002-08-14 2004-02-19 Kenneth Deh-Lee Method and system of managing repository for a mobile workforce
US20040064385A1 (en) 2002-09-30 2004-04-01 Desmond Tamaki Method of centralized parts segregation
US20040117851A1 (en) * 2002-12-11 2004-06-17 Jeyhan Karaoguz Media exchange network supporting delivery of media content to authorized vehicles via media processing system
US7376832B2 (en) 2003-04-21 2008-05-20 International Business Machines Corporation Distributed method, system and computer program product for establishing security in a publish/subscribe data processing broker network
CN1549178A (zh) * 2003-05-16 2004-11-24 �Ҵ���˾ 分配和更新杂散资源的方法和系统
FR2856230B1 (fr) 2003-06-16 2006-02-03 Wavecom Systeme et procede de controle d'equipements a distance a l'aide de fonctions api, dispositif et module de radiocommunication et jeu de fonctions correspondants
GB0315190D0 (en) * 2003-06-28 2003-08-06 Ibm Methods, apparatus and computer programs for visualization and management of data organisation within a data processing system
US6853910B1 (en) 2003-08-11 2005-02-08 General Motors Corporation Vehicle tracking telematics system
US20050055687A1 (en) * 2003-09-04 2005-03-10 Georg Mayer Software update information via session initiation protocol event packages
US20050090941A1 (en) 2003-10-22 2005-04-28 General Motors Corporation Telematics based programming gateway
WO2005045671A1 (en) 2003-10-27 2005-05-19 American Power Conversion Corporation System and method for updating a software program
US20050125261A1 (en) 2003-12-09 2005-06-09 Alexander Omeed Adegan Intelligent used parts cross-referencing, search and location software application
US7305672B2 (en) * 2004-01-06 2007-12-04 International Business Machines Corporation Dynamic software update system, method and program product
US7280900B2 (en) 2004-02-23 2007-10-09 General Motors Corporation Technical virtual advisor
US20050187668A1 (en) * 2004-02-23 2005-08-25 Baumgarte Joseph W. System or method for loading software onto a vehicle
US7506309B2 (en) 2004-03-23 2009-03-17 General Motors Corporation Method for managing vehicle software configuration updates
US20050216902A1 (en) 2004-03-23 2005-09-29 General Motors Corporation Method and system for vehicle software configuration update management
US7366589B2 (en) 2004-05-13 2008-04-29 General Motors Corporation Method and system for remote reflash
US7886180B2 (en) 2004-05-14 2011-02-08 International Business Machines Corporation Recovery in a distributed stateful publish-subscribe system
US7607126B2 (en) * 2004-05-21 2009-10-20 Bea Systems, Inc. System and method for external override of annotations
GB0419231D0 (en) * 2004-08-28 2004-09-29 Ibm Methods, apparatus and computer programs for control of publish/subscribe messaging
US7835691B2 (en) 2004-08-30 2010-11-16 General Motors Llc Remote vehicle-related notification
US7162339B2 (en) 2004-08-31 2007-01-09 General Motors Corporation automated vehicle calibration and testing system via telematics
US20060155439A1 (en) 2005-01-12 2006-07-13 Slawinski John A System and method for using a vehicle's key to collect vehicle data and diagnose mechanical problems, to store and compare security data to allow only authorized use of vehicles and a method to automatically set vehicle features usng the key
US20060258377A1 (en) 2005-05-11 2006-11-16 General Motors Corporation Method and sysem for customizing vehicle services
US20070055414A1 (en) 2005-09-08 2007-03-08 Darji Ankur K Method and system for configuring telematics control unit
US20120330723A1 (en) 2006-04-24 2012-12-27 Hedy Shad M Distributed system and method for used vehicle valuation
US8427979B1 (en) 2006-07-27 2013-04-23 Mobitrum Corporation Method and system for dynamic information exchange on location aware mesh network devices
US7930279B2 (en) 2006-09-29 2011-04-19 Christopher Betts Systems and methods adapted to retrieve and/or share information via internet communications
US7937075B2 (en) 2006-10-06 2011-05-03 At&T Intellectual Property I, L.P. Mode changing of a mobile communications device and vehicle settings when the mobile communications device is in proximity to a vehicle
US8219710B2 (en) 2006-10-28 2012-07-10 General Motors Llc Method of establishing a data connection with a telematics-equipped vehicle
GB0623917D0 (en) 2006-11-30 2007-01-10 Ibm Method, apparatus and computer program for controlling retention of publications
US8180735B2 (en) * 2006-12-29 2012-05-15 Prodea Systems, Inc. Managed file backup and restore at remote storage locations through multi-services gateway at user premises
US8484328B2 (en) 2007-02-23 2013-07-09 Avaya Inc. Apparatus and method for stateful web services enablement
US8762984B2 (en) * 2007-05-31 2014-06-24 Microsoft Corporation Content distribution infrastructure
US8473938B1 (en) 2007-06-21 2013-06-25 Open Invention Network Llc Security patch update processor
US20090182825A1 (en) 2007-07-04 2009-07-16 International Business Machines Corporation Method and system for providing source information of data being published
US7822775B2 (en) 2007-07-20 2010-10-26 Sap Ag Method and system for managing complex database information
US8635608B2 (en) 2007-09-04 2014-01-21 Teradata Us, Inc. Software update system and method
US8370254B1 (en) 2007-09-26 2013-02-05 United Services Automobile Association Enhanced vehicle identification card
US8320893B2 (en) 2007-09-28 2012-11-27 General Motors Llc Method and system for conference calling with vehicle occupant
US20090119657A1 (en) 2007-10-24 2009-05-07 Link Ii Charles M Methods and systems for software upgrades
US8332838B2 (en) 2007-11-14 2012-12-11 Continental Automotive Systems, Inc. Systems and methods for updating device software
CN102203810A (zh) 2008-09-09 2011-09-28 美国联合包裹服务公司 利用远程信息数据改善车队管理运作的系统和方法
US20100082559A1 (en) 2008-09-19 2010-04-01 General Motors Corporation Method of managing a schedule-based software package update
US20100228404A1 (en) * 2009-03-06 2010-09-09 Link Ii Charles M Method and system for configuring and provisioning a vehicle
US8732258B2 (en) 2009-03-20 2014-05-20 Oracle America, Inc. Method and system for transporting telemetry data across a network
DE102009018761A1 (de) 2009-04-27 2010-10-28 Bayerische Motoren Werke Aktiengesellschaft Verfahren zur Aktualisierung von Softwarekomponenten
US20110045842A1 (en) * 2009-08-20 2011-02-24 Ford Global Technologies, Llc Method and System For Updating A Social Networking System Based On Vehicle Events
US20110083128A1 (en) 2009-10-02 2011-04-07 International Truck Intellectual Property Company, Llc Method for selecting software and installing same via a telematic module in a motor vehicle
US8838332B2 (en) 2009-10-15 2014-09-16 Airbiquity Inc. Centralized management of motor vehicle software applications and services
US8291025B2 (en) 2009-10-23 2012-10-16 International Business Machines Corporation Controlling retention of publication
US11042816B2 (en) 2009-10-30 2021-06-22 Getaround, Inc. Vehicle access control services and platform
US20110106375A1 (en) 2009-11-03 2011-05-05 Vishnu Gurusamy Sundaram Method and system for providing an integrated platform for entertainment, information, communication, control and computing applications in vehicles
JP2011118884A (ja) 2009-11-04 2011-06-16 Fujitsu Ltd 通信端末装置、ソフトウェア取得方法及びソフトウェア取得プログラム
DE102009056786A1 (de) 2009-12-03 2011-06-09 Continental Automotive Gmbh Mobiles Interface und System zur Steuerung von Fahrzeugfunktionen
CN102859541A (zh) 2010-04-19 2013-01-02 国际商业机器公司 在发布/订阅通讯中控制消息传递
US8498771B2 (en) 2010-05-05 2013-07-30 Ford Global Technologies, Llc Wireless vehicle servicing
US8391829B2 (en) 2010-06-10 2013-03-05 General Motors Llc Remote vehicle data access during a multi-way call with a vehicle telematics unit
US20110307933A1 (en) * 2010-06-15 2011-12-15 Telefonaktiebolaget L M Ericsson (Publ) Systems and methods for implementing server side push mechanisms for internet protocol television (iptv) updates
US8521424B2 (en) 2010-09-29 2013-08-27 Ford Global Technologies, Llc Advanced map information delivery, processing and updating
US9020487B2 (en) 2010-10-14 2015-04-28 At&T Mobility Ii Llc Over-the-air content management of wireless equipment in confined-coverage wireless networks
US8457686B2 (en) 2010-12-02 2013-06-04 General Motors Llc Method of communication between a vehicle telematics unit and a call center
US8458315B2 (en) 2010-12-06 2013-06-04 Sap Ag In-vehicle application platform for vehicle-to-business communication
US8788139B2 (en) 2011-03-21 2014-07-22 Webtech Wireless Inc. Multi-protocol vehicle diagnostic interface device and method
WO2012130257A1 (en) 2011-03-29 2012-10-04 Volvo Lastvagnar Ab Secured repair data package
US9208626B2 (en) 2011-03-31 2015-12-08 United Parcel Service Of America, Inc. Systems and methods for segmenting operational data
GB201106555D0 (en) 2011-04-19 2011-06-01 Tomtom Int Bv Taxi dispatching system
DE102011100106A1 (de) 2011-04-30 2012-10-31 Daimler Ag System zur Diagnose einer Komponente in einem Fahrzeug
US9557981B2 (en) 2011-07-26 2017-01-31 Ford Global Technologies, Llc Method and apparatus for automatic module upgrade
US9116786B2 (en) 2011-11-16 2015-08-25 Flextronics Ap, Llc On board vehicle networking module
US8744421B2 (en) 2011-11-18 2014-06-03 General Motors Llc Method of initiating a hands-free conference call
US8635018B2 (en) 2012-02-03 2014-01-21 International Business Machines Corporation Managing a driver profile
US8880277B2 (en) 2012-02-29 2014-11-04 GM Global Technology Operations LLC Methods and systems for diagnosing a vehicle
US8452465B1 (en) 2012-03-30 2013-05-28 GM Global Technology Operations LLC Systems and methods for ECU task reconfiguration
US8918231B2 (en) 2012-05-02 2014-12-23 Toyota Motor Engineering & Manufacturing North America, Inc. Dynamic geometry support for vehicle components
EP2680534B1 (de) 2012-06-28 2017-12-27 Harman Becker Automotive Systems GmbH Protokollierung für telematiksysteme
WO2014033698A2 (en) * 2012-09-03 2014-03-06 Telefonaktiebolaget L M Ericsson (Publ) Methods and apparatuses for automatic provisioning of external identifiers used for machine type devices in a 3gpp network
WO2014088567A1 (en) 2012-12-05 2014-06-12 Bendix Commercial Vehicle Systems Llc Methods and apparatus for updating software components in coordination with operational modes of a motor vehicle
US9075686B2 (en) 2013-02-25 2015-07-07 GM Global Technology Operations LLC System and method to improve control module reflash time
US20140282470A1 (en) 2013-03-13 2014-09-18 Arynga Inc. Remote transfer of electronic images to a vehicle
US10061574B2 (en) 2013-03-14 2018-08-28 Ford Global Technologies, Llc Method and apparatus for multiple vehicle software module reflash
US8924071B2 (en) 2013-04-26 2014-12-30 Ford Global Technologies, Llc Online vehicle maintenance
US20140380296A1 (en) 2013-06-20 2014-12-25 General Motors Llc Re-programming vehicle modules
KR101500094B1 (ko) 2013-07-01 2015-03-06 현대자동차주식회사 이더넷 기반의 차량 네트워크 메시지 전달 시스템 및 방법
US9215227B2 (en) 2013-08-23 2015-12-15 Unisys Corporation Systems and methods for network communications
US9529584B2 (en) 2013-11-06 2016-12-27 General Motors Llc System and method for preparing vehicle for remote reflash event
US9715378B2 (en) 2013-12-18 2017-07-25 International Business Machines Corporation Automated software update scheduling

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
IEEE (Institute of Electrical and Electronics Engineers) 802
IEEE 1284
IEEE 1394
IEEE 802
IEEE 802 LAN(local area network)-Protokolle

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10967902B2 (en) 2017-05-08 2021-04-06 Volkswagen Ag Method for calibrating the steering angle sensor of a motor vehicle
US11962455B2 (en) 2021-11-29 2024-04-16 T-Mobile Usa, Inc. Prioritizing multiple issues associated with a wireless telecommunication network
US12039471B2 (en) 2021-11-29 2024-07-16 T-Mobile Usa, Inc. Tracking issues and resolution of same in a wireless communication network
US11855831B1 (en) 2022-06-10 2023-12-26 T-Mobile Usa, Inc. Enabling an operator to resolve an issue associated with a 5G wireless telecommunication network using AR glasses

Also Published As

Publication number Publication date
US9766874B2 (en) 2017-09-19
US20150193220A1 (en) 2015-07-09
CN104778056B (zh) 2019-10-22
CN104778056A (zh) 2015-07-15

Similar Documents

Publication Publication Date Title
DE102014118910A1 (de) Autonome globale Softwareaktualisierung
DE102014119366A1 (de) Flexible merkmalsbereitstellungsstrategie
DE102015104651B4 (de) Fernfahrzeugkonnektivitätsstatus
DE102015103973A1 (de) Mehrblock-Softwareaktualisierungen
DE102015104271A1 (de) Zielgerichtete Fernaktualisierung von Fahrzeugfunktionen
DE102015107189A1 (de) Modulschnittstelle für Fahrzeugaktualisierungen
DE102015108793A1 (de) Fahrzeugdownload mittels entfernter Mobilvorrichtung
DE102017100750A1 (de) Verfahren und vorrichtung für over-the-air-updates
DE102015103974A1 (de) Fahrzeugtelematik-Datenaustausch
DE102015116703A1 (de) Verfahren und Systeme zur Aktualisierung eines Fahrzeugdatenverarbeitungssystems
DE102016100203A1 (de) Verfahren und Systeme zur Aktualisierung von Fahrzeugsteuerungen
DE102014204222A1 (de) Verfahren und vorrichtung für die umprogrammierung mehrerer fahrzeugsoftwaremodule
DE102017100751A1 (de) Verfahren und vorrichtung für fahrzeug-software-updateinstallation
DE102015200893A1 (de) Vorrichtung und Verfahren zur Softwareimplementierung zwischen einem Fahrzeug und Mobilgerät
DE102015211904A1 (de) Fahrzeugsoftware-Aktualisierungsverifikation
DE102017101491A1 (de) Over-the-air trigger zu fahrzeugabfrageaktualisierungen
DE102015201448A1 (de) Verfahren und Gerät für bleibende übertragbare persönlich anpassbare Fahrzeugeinstellungen
DE102017111501A1 (de) Aktualisierung von fahrzeugsystemmodulen
DE102015104094A1 (de) Telematik mit variabler Berichtsfrequenz
DE102014219540A1 (de) Verfahren und eine Einrichtung zur bedarfsgerechten drahtlosen Modulaktualisierung
DE102016102509A1 (de) Verfahren und Vorrichtung zur Anwendungsverwaltung und -steuerung
DE102013216055A1 (de) Verfahren und Vorrichtungen für Fahrzeugrechensystem-Softwareaktualisierungen
DE102011079875A1 (de) Bereitstellung von daten an ein fahrzeug-infotainment-datenverarbeitungssystem
DE102015108349A1 (de) Verfahren und vorrichtung für das dynamische aktualisieren einer fahrzeugmodulkonfigurationsaufzeichnung
DE102016218560A1 (de) Verfahren und systeme für eine mobile vorrichtung zum emulieren einer fahrzeug-mensch-maschine-schnittstelle

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R079 Amendment of ipc main class

Free format text: PREVIOUS MAIN CLASS: G06F0009440000

Ipc: G06F0008650000