Brevet FR3111212A1 — publié le 20211210

L’invention concerne un procédé et un dispositif de mise à jour d’un logiciel embarqué d’un véhicule (100) via un terminal de communication mobile (110). Le téléchargement de la mise à jour est requis suite à la validation de l’utilisateur. Suite au téléchargement de la mise à jour sur le terminal de communication depuis un serveur distant (130), le logiciel embarqué est mis à jour sur le véhicule. FIG. 1 Mise à jour d’une application véhicule via une application Smartphone La présente invention appartient au domaine des logiciels embarqués dans les véhicules automobiles. Elle concerne en particulier un procédé et un dispositif de mise à jour de tels logiciels embarqués. Elle est particulièrement avantageuse dans le cas où la mise à jour du logiciel embarqué est faite à distance, via une liaison sans fil notamment. On entend par « véhicule » tout type de véhicule tel qu’un véhicule automobile, un cyclomoteur, une motocyclette, un robot de stockage dans un entrepôt, etc. On entend par « conduite autonome » d’un « véhicule autonome » tout procédé apte à assister la conduite du véhicule. Le procédé peut ainsi consister à diriger partiellement ou totalement le véhicule ou à apporter tout type d’aide à une personne physique conduisant le véhicule. Le procédé couvre ainsi toute conduite autonome, du niveau 0 au niveau 5 dans le barème de l’OICA, pour Organisation International des Constructeurs Automobiles. Dans la suite, le terme d’ « égo-véhicule » est utilisé pour désigner le véhicule dont la conduite autonome est déterminé. Toutefois, comme détaillé ci-après, l’invention ne s’applique pas uniquement à un égo-véhicule mais s’applique également à un véhicule en pilotage manuel. La demande de brevet KR20190079969 décrit un procédé de mise à jour d’un système de navigation d’un véhicule, depuis un smartphone localisé à l’intérieur du véhicule, via un mode de partage de réseau Wifi. Toutefois, ce document est limité à ce mode de partage, et l’intervention de l’utilisateur du smartphone est ainsi limitée, le smartphone jouant un simple rôle de relais. La présente invention vient améliorer la situation. A cet effet, un premier aspect de l’invention concerne un procédé de mise à jour d’un logiciel embarqué d’un véhicule, le procédé étant mis en œuvre dans un terminal de communication mobile et portatif et comprenant les étapes suivantes : - détermination d’une disponibilité d’une mise à jour pour le logiciel embarqué du véhicule; - sur validation d’une requête de mise à jour par un utilisateur, transmission de la requête de mise à jour à un serveur distant; - téléchargement de la mise à jour depuis le serveur distant via un réseau de télécommunications; - mise à jour du logiciel embarqué du véhicule par transfert entre le terminal de communication et le véhicule. Ainsi, le terminal de communication, pouvant être un Smartphone notamment, peut être utilisé dans un rôle d’interception entre le serveur distant et le véhicule automobile, permettant ainsi à l’utilisateur d’intervenir plus aisément dans la mise à jour du logiciel embarqué. Selon un mode de réalisation, le procédé peut comprendre en outre, suite à la détermination de la disponibilité de la mise à jour, la détermination d’une durée de mise à jour par le terminal de communication et l’affichage de la durée de mise à jour sur un écran du terminal de communication. Ainsi, l’utilisateur a connaissance d’une duré estimée de mise à jour, ce qui améliore la fiabilité et la prédictibilité du processus de mise à jour du logiciel embarqué. En complément, la durée de mise à jour peut être déterminée à partir d’un poids de la mise à jour et à partir de conditions d’accès au réseau de télécommunications. La durée de mise à jour est ainsi dépendante des conditions d’accès au réseau de télécommunications, ce qui améliore la précision de son estimation. En outre, l’utilisateur peut déplacer son terminal de communication pour améliorer de telles conditions, et ainsi réduire la durée de mise à jour. Selon un mode de réalisation, suite au téléchargement de la mise à jour, la mise à jour du logiciel embarqué peut être conditionnée par une validation de la mise à jour par l’utilisateur. L’utilisateur peut ainsi déclencher le téléchargement de la mise à jour lorsqu’il juge que la durée de mise à jour est suffisamment courte par exemple. Selon un mode de réalisation, le procédé peut comprendre une étape préalable d’installation d’une application associée au serveur distant, sur le terminal mobile de communication. Un tel mode de réalisation facilite la communication entre le terminal de communication et le serveur distant. En complément, la disponibilité de la mise à jour peut être déterminée par la réception d’une notification sur l’application du terminal de communication depuis le serveur distant. Un tel mode de réalisation implique une meilleure réactivité en ce que l’utilisateur est informé dès que la mise à jour est disponible. En complément ou en variante, suite à l’installation de l’application, le terminal de communication peut transmettre un identifiant véhicule au serveur distant. Ainsi, le terminal de communication est lié au véhicule auprès du serveur distant. Un deuxième aspect de l’invention concerne un programme informatique comportant des instructions pour la mise en œuvre du procédé selon le premier aspect de l’invention, lorsque ces instructions sont exécutées par un processeur. Un troisième aspect un terminal de communication mobile et portatif comprenant : - un processeur configuré pour déterminer une disponibilité d’une mise à jour pour un logiciel embarqué d’un véhicule; - une interface utilisateur pour recevoir une validation d’une requête de mise à jour par un utilisateur ; une interface réseau configurée pour transmettre la requête de mise à jour à un serveur distant et télécharger la mise à jour depuis le serveur distant via un réseau de télécommunications. Le processeur est en outre configuré pour mettre à jour le logiciel embarqué du véhicule par transfert entre le terminal de communication et le véhicule. D’autres caractéristiques et avantages de l’invention apparaîtront à l’examen de la description détaillée ci-après, et des dessins annexés sur lesquels : illustre un système de mise à jour du logiciel embarqué d’un véhicule selon un mode de réalisation de l’invention; est un diagramme illustrant les étapes d’un procédé selon un mode de réalisation de l’invention ; illustre un terminal de communication mobile selon un mode de réalisation de l’invention; La figure 1 présente un système selon un mode de réalisation de l’invention. Un véhicule 100 comprend un dispositif de contrôle 101 en charge de la mise à jour d’un logiciel embarqué. Le dispositif de contrôle 101 est adapté à la conduite autonome du véhicule 100, à l’assistance à la conduite du conducteur du véhicule 100 (logiciel de navigation, ou logiciel de type ADAS, pour « Advanced Driver Assistance System » en anglais) ou à toute autre fonction mettant en œuvre un logiciel embarqué (par exemple un logiciel de calibration moteur). Le système comprend en outre un terminal de communication mobile 110 et portatif, tel qu’un Smartphone (soit téléphone intelligent ou téléphone multifonction en français) par exemple. Dans ce qui suit, l’exemple d’un Smartphone est considéré, dans un but illustratif uniquement. Toutefois, l’invention s’applique à tout terminal de communication mobile, apte à communiquer avec un réseau de données via une interface cellulaire et/ou satellitaire. Le Smartphone 110 peut notamment être apte à échanger des données avec un réseau 5G. Le système comprend en outre un point d’accès 120 au réseau de données et un serveur distant 130 accessible via le réseau de données. Le point d’accès 120 représenté sur la figure 1 est une station de base terrestre, mais l’invention s’applique également à une communication par voie satellitaire. Le serveur distant 130 selon l’invention est apte à proposer des mises à jour du logiciel embarqué dans le véhicule 100. Par exemple, le serveur distant 130 peut appartenir au constructeur automobile du véhicule 100. Le serveur distant 130 peut être accessible via le réseau de données 120. Le dispositif de contrôle 101 peut comprendre une interface apte à communiquer avec le Smartphone 110. Une même interface du véhicule 100, ou une interface supplémentaire, est apte à communiquer directement avec le serveur distant 130 via le point d’accès 120. Le véhicule 100 peut notamment être identifié auprès du serveur 130 par un identifiant véhicule. Aucune restriction n’est attachée à l’identifiant véhicule qui peut être un identifiant constructeur unique ou tout couple d’identifiant/mot de passe. Toutefois, une communication directe entre le véhicule et le serveur distant 130 requiert que l’utilisateur soit à l’intérieur du véhicule pour requérir (ou pour accepter) la mise à jour, sans connaissance préalable du temps nécessaire pour la mise à jour. De plus, en cas de communication directe entre le véhicule 100 et le serveur 130, le véhicule 100 doit impérativement rester dans une zone de couverture du réseau durant l’intégralité de la mise à jour, ce qui n’est aucunement garanti lorsque le véhicule 100 est en déplacement. L’invention prévoit ainsi que le Smartphone 110 accède au serveur 130 afin de requérir la mise à jour du logiciel embarqué du véhicule 100. A cet effet, le Smartphone 110 peut installer une application associée au serveur 130. Par exemple, l’application peut être dédiée au constructeur automobile qui possède le serveur 130. L’application installée sur le Smartphone 110 peut en outre lier un compte de l’utilisateur au véhicule 100, notamment via l’identifiant véhicule décrit précédemment, et l’application peut ainsi identifier le véhicule 100 auprès du serveur 130. Le Smartphone 110 assure ainsi un rôle de relais entre le véhicule 100 et le serveur 130, ce qui a plusieurs avantages. La figure 2 est un diagramme illustrant les étapes d’un procédé selon un mode de réalisation de l’invention. A une étape 200, le Smartphone 110 installe une application associée au serveur 130. Pour la suite du procédé, une fois l’application installée, l’application peut être exécutée. Toutefois, une telle exécution est facultative. A une étape 201, le Smartphone peut identifier l’utilisateur et/ou le véhicule 100 auprès du serveur 110, consécutivement à la saisie d’un identifiant (accompagné optionnellement d’un mot de passe) par l’utilisateur par exemple. L’identifiant peut être conservé en mémoire par le Smartphone 110 pour des exécutions subséquentes de l’application. De préférence, le Smartphone 110 identifie le véhicule 100 auprès du serveur 130. A une étape 202, le Smartphone détermine qu’une mise à jour du logiciel embarqué du véhicule 100 est disponible, via l’application. A cet effet, le Smartphone 110 peut interroger le serveur 130, à une fréquence régulière ou sur demande de l’utilisateur (mode dit « pull »). En variante, le serveur 130 peut informer l’utilisateur, via l’application sur le Smartphone 110 qu’une mise à jour est disponible pour le véhicule 100 (mode dit « push). L’application peut permet à cet effet de signaler la disponibilité de la mise à jour par une notification à l’utilisateur (affichage d’une notification sur un écran du Smartphone 110). A une étape 203, le Smartphone estime une durée de mise à jour, ou une durée de téléchargement de la mise à jour, sur la base notamment d’une quantité de données (d’un poids) correspondant à la mise à jour, et sur la base de conditions réseau (état de la liaison avec le point d’accès 130 notamment). De manière générale, le Smartphone 110 peut mettre en œuvre toute technique de prédiction passive ou active de la durée de mise à jour du logiciel embarqué. Une telle estimation peut être provoquée automatiquement par la réception d’une notification sur l’application, ou peut être requise par l’utilisateur. A une étape 204 optionnelle, la durée de mise à jour peut être affichée par le Smartphone 110 sur un écran notamment. A une étape 205, l’utilisateur peut valider une requête de mise à jour auprès du serveur 130, via l’application sur le Smartphone 110. Suite à une telle validation, une requête peut être transmise au serveur 130 via le réseau 5G par exemple. Aucune restriction n’est attachée à l’intervalle temporel entre l’étape 204 et l’étape 205. Avantageusement, l’utilisateur peut se déplacer afin de répéter l’étape 203 jusqu’à ce qu’une durée de mise à jour lui convienne (critère subjectif défini par l’utilisateur). A une étape 206 , la mise à jour est téléchargée sur le Smartphone 110 depuis le serveur 130. A une étape 207 optionnelle, le passage à l’étape 208 décrite ci-après peut être conditionnée par la validation par l’utilisateur de la mise à jour du véhicule. L’utilisateur contrôle ainsi à la fois le moment du téléchargement, en fonction notamment des conditions d’accès au réseau par le Smartphone 110, et le moment de la mise à jour du logiciel embarqué sur le véhicule, en fonction notamment de la proximité entre le Smartphone 110 et le véhicule 100. A une étape 208, le logiciel embarqué du véhicule 100 est mis à jour depuis le Smartphone 110, via une voie de communication sans fil ou filaire entre le Smartphone et le véhicule 100. Aucune restriction n’est attachée à l’intervalle temporel entre les étapes 207 et 208. Une notification peut indic A une étape 209 optionnelle, une indication que la mise à jour a été effectuée peut être transmise du Smartphone 110 au serveur 130 et peut être indiquée à l’utilisateur sur l’écran du Smartphone 110. L’invention utilise ainsi de manière avantageuse le Smartphone comme relais entre le serveur 130 et le véhicule 100, assurant ainsi le découplage temporel entre le téléchargement de la mise à jour, et la mise à jour du logiciel embarqué, ce qui améliore la flexibilité associée à la mise à jour. En outre, l’utilisation du Smartphone permet de prédire la durée de la mise à jour, et la mise à jour est ainsi optimisée en fonction des conditions d’accès au réseau de télécommunications et des préférences de l’utilisateur. La figure 3 présente la structure d’un terminal mobile, tel que le Smartphone 110, selon un mode de réalisation de l’invention. Le Smartphone peut comprendre une interface de communication 301 apte à communiquer avec le véhicule 100, via toute technologie sans fil (Wifi, 5G ou autre) ou filaire. En outre le Smartphone 110 peut comprendre une interface réseau 303 apte à communiquer avec le point d’accès 130, par voie cellulaire ou satellitaire. Les interfaces 301 et 303 peuvent être une même et unique interface, 5G par exemple. Le Smartphone 110 comprend en outre un processeur 302 et une mémoire 304, le processeur 302 étant apte à mettre en œuvre les étapes du procédé illustrées en référence à la figure 2, par exemple en exécutant des instructions stockées dans la mémoire 304. La mémoire 304 peut en outre stocker les données nécessaires à l’installation et l’exécution de l’application, l’exécution étant effectuée par le processeur 302. La mémoire 304 peut stocker l’identifiant utilisateur et l’identifiant véhicule précités. Le Smartphone 110 comprend en outre une interface utilisateur 306, apte à recevoir des saisies utilisateur, tel qu’un clavier, ou un écran tactile, et un écran 307. Un écran tactile peut à la fois remplir le rôle d’écran 307 et d’interface utilisateur 306. Le Smartphone 110 comprend bien entendu d’autres composants nécessaires à son fonctionnement ou permettant la réalisation de fonctions supplémentaires, qui ne sont pas représentés sur la figure 3 par souci de clarté. La présente invention ne se limite pas aux formes de réalisation décrites ci-avant à titre d’exemples ; elle s’étend à d’autres variantes. Procédé de mise à jour d’un logiciel embarqué d’un véhicule (100), le procédé étant mis en œuvre dans un terminal de communication mobile (110) et comprenant les étapes suivantes : - détermination (202) d’une disponibilité d’une mise à jour pour le logiciel embarqué du véhicule; - sur validation (205) d’une requête de mise à jour par un utilisateur, transmission de la requête de mise à jour à un serveur distant (130); - téléchargement (206) de la mise à jour depuis le serveur distant via un réseau de télécommunications; - mise à jour (208) du logiciel embarqué du véhicule par transfert entre le terminal de communication et le véhicule. Procédé selon la revendication 1, comprenant en outre, suite à la détermination de la disponibilité de la mise à jour, la détermination (203) d’une durée de mise à jour par le terminal de communication et l’affichage de la durée de mise à jour sur un écran (307) du terminal de communication (110). Procédé selon la revendication 2, dans lequel la durée de mise à jour est déterminée à partir d’un poids de la mise à jour et à partir de conditions d’accès au réseau de télécommunications. Procédé selon l’une des revendications précédentes, dans lequel, suite au téléchargement de la mise à jour, la mise à jour du logiciel embarqué est conditionnée par une validation (207) de la mise à jour par l’utilisateur. Procédé selon l’une des revendications précédentes, comprenant une étape préalable d’installation (200) d’une application associée au serveur distant, sur le terminal mobile de communication. Procédé selon la revendication 5, dans lequel la disponibilité de la mise à jour est déterminée par la réception d’une notification sur l’application du terminal de communication depuis le serveur distant (130). Procédé selon la revendication 5 ou 6, dans lequel suite à l’installation de l’application, le terminal de communication transmet (201) un identifiant véhicule au serveur distant (130). Programme informatique comportant des instructions pour la mise en œuvre du procédé selon l’une quelconque des revendications précédentes, lorsque ces instructions sont exécutées par un processeur (302). Terminal de communication mobile (110) comprenant : - un processeur (302) configuré pour déterminer une disponibilité d’une mise à jour pour un logiciel embarqué d’un véhicule (100); - une interface utilisateur (306) pour recevoir une validation d’une requête de mise à jour par un utilisateur ; - une interface réseau (303) configurée pour transmettre la requête de mise à jour à un serveur distant et télécharger la mise à jour depuis le serveur distant via un réseau de télécommunications; dans lequel le processeur est en outre configuré pour mettre à jour le logiciel embarqué du véhicule par transfert entre le terminal de communication et le véhicule.