A vehicle firmware flashing method and related device

By utilizing the SSHFS protocol within a local area network to achieve remote file mounting and breakpoint resume, the problems of slow transmission speed and cumbersome operation in vehicle firmware upgrades have been solved. This enables concurrent and efficient firmware upgrades for multiple vehicles, improving the upgrade efficiency and security during the vehicle R&D and testing phase.

CN122132062APending Publication Date: 2026-06-02LAUNCH TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2026-02-28
Publication Date
2026-06-02

AI Technical Summary

Technical Problem

Existing vehicle firmware upgrade methods suffer from slow transmission speed, cumbersome operation, chaotic version management, and insufficient security, especially in scenarios involving multiple vehicles and frequent version upgrades, where efficiency is low.

Method used

By setting up a file server within the local area network and utilizing the SSHFS protocol to remotely mount files, the firmware upgrade files are virtualized as a local directory of the vehicle's infotainment system. This supports concurrent access from multiple vehicles and resume interrupted downloads. Combined with file integrity verification and user selection mechanisms, it enables fast and secure firmware upgrades.

Benefits of technology

It improves the efficiency and operational flexibility of firmware upgrades in multi-vehicle scenarios, supports breakpoint resume and concurrent access by multiple vehicles, ensures the integrity and security of upgrade files, and is suitable for frequent large file upgrade needs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122132062A_ABST
    Figure CN122132062A_ABST
Patent Text Reader

Abstract

This application provides a method and related equipment for flashing vehicle firmware, which improves the upgrade efficiency of vehicle infotainment system firmware. The method includes: setting up a file server within a local area network (LAN) and creating a remote directory on the file server for storing firmware upgrade files; deploying and starting a remote file mounting service on the file server, configuring access parameters for the remote file mounting service, and configuring the file server as a server with a fixed LAN address; connecting the vehicle infotainment system (with firmware to be upgraded) to the LAN, and having the vehicle infotainment system act as a client to send a remote directory mounting command to the file server; after the remote directory mounting command is authenticated, mapping the remote directory to a virtual local directory of the vehicle infotainment system; accessing the firmware upgrade files in the virtual local directory and controlling the vehicle infotainment system to perform firmware flashing operations; and sending a remote directory unmounting command to the file server to unmount the remote directory from the vehicle infotainment system.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of automotive electronic system technology, and in particular to a method for flashing vehicle firmware and related equipment. Background Technology

[0002] In the research, development, testing, and maintenance of automotive electronic control units (ECUs), firmware flashing or upgrades of in-vehicle systems (such as infotainment systems) are frequently required. Especially during the development phase, firmware versions change frequently, and firmware upgrade files are typically large (reaching several GB or even tens of GB). Currently, the two most common local firmware upgrade methods are as follows:

[0003] Upgrades based on the UDS protocol using diagnostic equipment: This method connects to the on-board diagnostic system (OBD) via the vehicle communication interface (VCI, Vehicle Identification Number) and utilizes the Unified Diagnostic Services (UDS) protocol for firmware transfer and flashing. While this method is secure and reliable, it is slow when handling large files, resulting in lengthy upgrade times, and requires dedicated diagnostic equipment.

[0004] Local upgrade via USB flash drive: Copy the firmware upgrade file to a USB flash drive, then insert it into the vehicle's infotainment system's USB port. The upgrade program within the system will automatically recognize and execute the upgrade. While this method does not require dedicated diagnostic equipment, in scenarios involving multiple vehicles and frequent upgrades of multiple versions, repeatedly copying the firmware to multiple USB flash drives is cumbersome, inefficient, and prone to version management chaos.

[0005] Furthermore, while existing network-based file-sharing solutions (such as NFS and Samba) exist, they typically require complex configuration and management, and most are not optimized for vehicle firmware upgrade scenarios, making it difficult to meet the security, convenience, and concurrent access requirements of the in-vehicle environment. Although SSHFS (SSH Filesystem) can securely mount remote directories through the Secure Shell protocol, its application in the field of vehicle firmware upgrades lacks a systematic approach and process design.

[0006] Therefore, there is an urgent need for a firmware upgrade method suitable for special scenarios such as vehicle research and development and testing. Summary of the Invention

[0007] This application provides a method for flashing vehicle firmware and related equipment to improve the upgrade efficiency of vehicle infotainment firmware.

[0008] The first aspect of this application provides a method for flashing vehicle firmware, including:

[0009] A file server is set up within the local area network, and a remote directory for storing firmware upgrade files is created on the file server; wherein, the remote directory stores firmware upgrade files for upgrading the vehicle's infotainment system firmware;

[0010] Deploy and start a remote file mounting service on the file server, configure the access parameters of the remote file mounting service, and configure the file server as a server with a fixed local area network address;

[0011] Connect the vehicle's infotainment system (VIS) to the local area network and make the VIS act as a client to send a remote directory mount command to the file server.

[0012] After the remote directory mount command is authenticated, the remote directory is mapped to the vehicle's in-vehicle infotainment system's virtual local directory;

[0013] When the vehicle's infotainment system calls the built-in firmware upgrade program, it accesses the firmware upgrade file in the virtual local directory and controls the vehicle's infotainment system to perform a firmware flashing operation.

[0014] Once the firmware flashing operation is complete, a remote directory uninstallation command is sent to the file server to unmount the vehicle's infotainment system from the remote directory.

[0015] Optionally, the method further includes:

[0016] If there are multiple vehicle-mounted infotainment systems, the infotainment systems of all the vehicles are mounted on the same remote directory of the file server, and the firmware upgrade file is read and the firmware is upgraded concurrently.

[0017] Optionally, after mapping the remote directory to the vehicle's in-vehicle infotainment system's virtual local directory, the method further includes:

[0018] Send a directory list query request to the file server to obtain a list of firmware files in the remote directory;

[0019] Trigger a user selection action to determine the firmware upgrade file for the firmware to be upgraded from the firmware file list;

[0020] Verify the integrity of the firmware upgrade file of the firmware to be upgraded, and after the verification is successful, execute the step of accessing the firmware upgrade file in the virtual local directory.

[0021] Optionally,

[0022] The remote file mounting service is a file system service based on the SSH protocol;

[0023] The vehicle's infotainment system connects to the local area network via a wireless network;

[0024] The remote target mounting instruction includes one or more of the following: the server's IP address, remote directory path, local mapping path, or authentication information.

[0025] The access parameters include one or more of the following: keep-alive time interval, connection disconnection condition, login account and password, and communication port number;

[0026] The firmware file format includes at least one of .bin, .hex, or .s19;

[0027] The file server is an electronic device with SSH service and SSHFS software installed.

[0028] A second aspect of this application provides a vehicle firmware flashing device, comprising:

[0029] The configuration unit is used to set up a file server within a local area network and create a remote directory on the file server for storing firmware upgrade files; wherein, the remote directory stores firmware upgrade files for upgrading the vehicle's infotainment system firmware.

[0030] The configuration unit is used to deploy and start a remote file mounting service on the file server, configure the access parameters of the remote file mounting service, and configure the file server as a server with a fixed local area network address.

[0031] The access unit is used to connect the vehicle's infotainment system (VIS) to the local area network (LAN) and enable the VIS to act as a client to send a remote directory mount command to the file server.

[0032] The mapping unit is used to map the remote directory to the vehicle's in-vehicle infotainment system as a virtual local directory after the remote directory mount command is authenticated.

[0033] The control unit is used to access the firmware upgrade file in the virtual local directory and control the vehicle's infotainment system to perform firmware flashing operations when the vehicle's infotainment system calls the built-in firmware upgrade program.

[0034] The sending unit is used to send a remote directory uninstallation command to the file server after the firmware flashing operation is completed, thereby unmounting the vehicle's infotainment system from the remote directory.

[0035] The vehicle firmware flashing device provided in the second aspect of this application is used to execute the vehicle firmware flashing method described in the first aspect.

[0036] A third aspect of this application provides a vehicle firmware flashing system, comprising:

[0037] A file server, deployed within a local area network, is used to store firmware upgrade files and provide remote directory mounting services.

[0038] At least one vehicle infotainment system is configured to access the local area network and act as a client to mount a remote directory on the file server;

[0039] The vehicle's infotainment system includes an upgrade module for accessing firmware upgrade files in a mounted virtual local directory and performing firmware flashing operations.

[0040] The vehicle firmware flashing system provided in the third aspect of this application is used to execute the vehicle firmware flashing method described in the first aspect.

[0041] The fourth aspect of this application provides a computer program product including computer-readable instructions that, when executed on an electronic device, cause the electronic device to implement the vehicle firmware flashing method of the first aspect or any implementation thereof.

[0042] A fifth aspect of this application provides an electronic device, comprising at least one processor and a memory connected to the processor, wherein:

[0043] The memory is used to store computer programs;

[0044] The processor is used to execute the computer program so that the electronic device can implement the vehicle firmware flashing method of the first aspect or any implementation thereof.

[0045] The sixth aspect of this application provides a computer storage medium carrying one or more computer programs, which, when executed by an electronic device, enable the electronic device to perform a vehicle firmware flashing method according to the first aspect or any implementation thereof.

[0046] As can be seen from the above technical solutions, the embodiments of this application have the following advantages: The vehicle firmware flashing method disclosed in this application utilizes remote file mounting technology to virtually mount the firmware file as a local directory of the vehicle's infotainment system within a local area network, enabling rapid, concurrent firmware upgrades without the need for physical media copying or dedicated diagnostic equipment. This method avoids the drawbacks of slow traditional UDS upgrades and cumbersome USB flash drive operations, significantly improving upgrade efficiency and operational flexibility in multi-vehicle scenarios. Unified firmware version management and convenient updates support breakpoint resume and concurrent access from multiple vehicles, making it particularly suitable for the frequent firmware flashing needs of large files during the R&D and testing phase. Attached Figure Description

[0047] The above and other features, advantages, and aspects of the embodiments of this disclosure will become more apparent from the accompanying drawings and the following detailed description. Throughout the drawings, the same or similar reference numerals denote the same or similar elements. It should be understood that the drawings are schematic, and the originals and elements are not necessarily drawn to scale.

[0048] Figure 1 This is a schematic diagram of the architecture of a vehicle firmware flashing system disclosed in an embodiment of this application;

[0049] Figure 2 This is a flowchart illustrating a method for flashing vehicle firmware disclosed in an embodiment of this application.

[0050] Figure 3 This is a flowchart illustrating another method for flashing vehicle firmware disclosed in an embodiment of this application.

[0051] Figure 4 This is a flowchart illustrating another method for flashing vehicle firmware disclosed in an embodiment of this application.

[0052] Figure 5 This is a schematic diagram of the structure of a vehicle firmware flashing device disclosed in an embodiment of this application;

[0053] Figure 6 This is a schematic diagram of the structure of an electronic device disclosed in an embodiment of this application. Detailed Implementation

[0054] The embodiments of this application are described below with reference to the accompanying drawings. The terminology used in the implementation section of this application is for explaining specific embodiments only and is not intended to limit the scope of this application.

[0055] The embodiments of this application will now be described with reference to the accompanying drawings. Those skilled in the art will recognize that, with technological advancements and the emergence of new scenarios, the technical solutions provided in the embodiments of this application are equally applicable to similar technical problems.

[0056] The terms "first," "second," etc., used in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such terms are interchangeable where appropriate; this is merely a way of distinguishing objects with the same attributes in the embodiments of this application. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion, so that a process, method, system, product, or apparatus that comprises a series of elements is not necessarily limited to those elements but may include other elements not explicitly listed or inherent to those processes, methods, products, or apparatuses.

[0057] See Figure 1 , Figure 1 A schematic diagram of the architecture of a vehicle firmware flashing system is shown. The system may include a vehicle infotainment system 100 and a server 200. The server 200 can provide the method provided in this embodiment to one or more terminals.

[0058] The vehicle infotainment system 100 may be equipped with a firmware upgrade program. The upgrade program can provide an interface. The vehicle infotainment system 100 can receive relevant parameters input by the user on the display interface and send the parameters to the server 200. The server 200 can obtain the processing result based on the received parameters and return the processing result (in this embodiment, a firmware upgrade file) to the vehicle infotainment system 100.

[0059] It should be understood that in some optional implementations, the vehicle's in-vehicle system 100 can also complete the actions based on the received parameters and obtain the processing results on its own, without the need for the server to cooperate. This application embodiment is not limited to this.

[0060] The following description Figure 1 The product form of the mid-range server 200;

[0061] The server 200 in this application embodiment can be a laptop computer, desktop computer, ultra-mobile personal computer (UMPC), netbook, personal digital assistant (PDA), etc., and this application embodiment does not impose any restrictions on it.

[0062] The vehicle infotainment system 100 or server 200 may include a radio frequency unit, memory, input unit, display unit, camera (optional), audio circuitry (optional), speaker (optional), microphone (optional), headphone jack (optional), processor, external interface, power supply, and other components. Those skilled in the art will understand that the above components are merely examples and do not constitute a limitation on the terminal or multifunctional device; it may include more or fewer components, or a combination of certain components, or different components.

[0063] The input unit can be used to receive input numerical or character information, and to generate key signal inputs related to user settings and function control of the portable multi-functional device. Specifically, the input unit may include a touch screen (optional) and / or other input devices. Other input devices may include, but are not limited to, one or more of a physical keyboard, function keys (such as volume control buttons, power buttons, etc.), trackball, mouse, joystick, etc. The input device can receive input data, etc. The display unit can be used to display information input by the user or information provided to the user, various menus of the terminal, interactive interfaces, file display, and / or playback of any multimedia file. In this embodiment, the display unit can be used to display the display interface after firmware upgrade, processing results, etc. The memory can be used to store software code related to the vehicle firmware flashing method, the processor can execute the steps of the vehicle firmware flashing method, and can also schedule other units (such as the aforementioned input unit and display unit) to achieve corresponding functions. The radio frequency unit (optional) can be used to receive and send signals during information transmission or calls. In this embodiment, the radio frequency unit can send data to the server 200 and receive processing results sent by the server 200. Data can also be sent to the vehicle's infotainment system 100, and processing results can be received from the vehicle's infotainment system 100. It should be understood that this radio frequency unit is optional and can be replaced with other communication interfaces, such as an Ethernet port. The vehicle's infotainment system 100 also includes a power supply (such as a battery) to power various components. The vehicle's infotainment system 100 also includes an external interface, which can be a standard Micro USB interface or a multi-pin connector, used to connect the vehicle's infotainment system 100 to other devices for communication, and also to connect a charger to charge the vehicle's infotainment system 100. The server 200 includes a bus, a processor, a communication interface, and a memory. The processor, memory, and communication interface communicate with each other via the bus.

[0064] In some embodiments, a file server, deployed within a local area network (LAN), is used to store firmware upgrade files and provide remote directory mounting services. At least one vehicle infotainment system (VIS) is configured to access the LAN and act as a client to mount the remote directory on the file server. The VIS includes an upgrade module for accessing the firmware upgrade files in the mounted virtual local directory and performing firmware flashing operations. The file server supports the SSHFS protocol, and the VIS accesses the LAN via a wireless network.

[0065] To address the technical challenges existing in current technologies as much as possible, please refer to [reference needed]. Figure 2 , Figure 2 This is a flowchart illustrating a vehicle firmware flashing method disclosed in an embodiment of this application. It includes steps 201-206.

[0066] 201. Set up a file server on the local area network and create a remote directory on the file server to store firmware upgrade files.

[0067] Combination Figure 1 As shown, this can be applied to some electronic devices. First, a local area network (LAN) can be established using a switch or router. External devices can connect to this LAN via wired or wireless connections, and devices within the LAN can then communicate with each other via Ethernet.

[0068] In some embodiments, within a local area network, an electronic device (e.g., a computer) is used as a file server for remote file hosting, and a remote directory for storing firmware upgrade files is created on this file server. It is understood that this remote directory may store firmware upgrade files for vehicle infotainment system firmware upgrades.

[0069] In some embodiments, when creating a mountable target, the directory name can be set to " / FIREWARE / CAR.", and the firmware file to be upgraded can be stored in this directory. The format of the firmware file can be ".bin", ".hex", ".s19", etc., and there is no specific limitation here.

[0070] 202. Deploy and start the remote file mounting service on the file server, configure the access parameters of the remote file mounting service, and configure the file server as a server with a fixed local area network address.

[0071] In some embodiments, a remote file mounting service is deployed and started on the file server, and the software and configuration related to the remote file mounting service are installed on the file server, such as the commonly used SSHFS (SSH file system). When installing the software and configuration for the remote file mounting service, the computer needs to have the SSH protocol service installed and the access parameters for the remote file mounting service configured. For example, keep-alive interval, disconnection conditions, login username and password, communication port number, etc., are not limited here. After the SSH protocol service and access parameters are configured, the computer's IP address can be set, thereby configuring the file server as a server with a fixed local area network address. The computer's IP address can be a static IP address, such as 192.168.1.10, for access by the vehicle's infotainment system.

[0072] Furthermore, after configuring the above protocol services and access parameters, run the SSH service.

[0073] 203. Connect the vehicle's infotainment system (VIS) to the local area network and make the VIS act as a client to send a remote directory mount command to the file server.

[0074] In some embodiments, the vehicle's infotainment system, whose firmware is to be upgraded, is connected to a local area network. After connection, the vehicle's infotainment system acts as a client and sends a remote target mount command to the file server to request remote mount service.

[0075] In some embodiments, the vehicle's infotainment system can connect to the local area network via Wi-Fi. After connection, the vehicle's infotainment system can remotely mount directories via mounting commands.

[0076] Furthermore, the server will then require the user account and password required for the firmware upgrade. After entering the correct account and password, the mounting will be completed.

[0077] 204. After the remote directory mount command is authenticated, the remote directory is mapped to the vehicle's in-vehicle infotainment system's virtual local directory.

[0078] In some embodiments, after the user enters the correct account and password, the remote target mount command can be authenticated, thereby mapping the remote directory to a local virtual directory on the vehicle's infotainment system. For example, executing "sshfsusername@192.168.1.10: / FIREWARE / CAR / mnt / fw_server" on the vehicle's infotainment system, where sshfs is the command name, username is the server's computer name, 192.168.1.10 is the server's IP address, / FIREWARE / CAR is the directory to be mounted on the server, and / mnt / fw_server mounts the server directory to the vehicle's infotainment system. It can be understood that in this case, the computer acts as the server, and the vehicle's infotainment system acts as the client. The purpose of sending the command is to map the remote server's directory to a local directory on the vehicle's infotainment system.

[0079] In some embodiments, the mounting process primarily utilizes the SSHFS protocol. The user executes the SSHFS command, specifically "sshfs user@host: / path / mnt" on the vehicle's infotainment system, and then the subsequent mounting process is executed. Step 1: Initiate a mount request " / dev / fuse + mount point" in the FUSE kernel module using the SSHFS command; Step 2: Create an SSHFS daemon process and pass the file descriptor to the SSH client; Step 3: Establish an SSH connection on the SSH client; Step 4: The SSH client and SSH server perform an SSH handshake (key / password authentication, etc.); Step 5: Start the SFTP subsystem; Step 6: Send an initialization request to the SSH client based on the SSHFS daemon process; Step 7: The SSH client forwards the SFTP initialization request to the SSH server and completes the initialization operation; Step 8: The SFTP subsystem returns an SFTP handle; Step 9: The SSH server forwards a response to the SSH client; Step 10: The SSH client connection is ready; Step 11: The SSHFS daemon process and the FUSE kernel module confirm the mount is complete; Step 12: The FUSE kernel module returns a mount success command or display to the user (display interface); Step 13: The mount command is completed. At this point, SSHFS enters the event loop, listening for / dev / fuse requests.

[0080] 205. When the vehicle's infotainment system calls the built-in firmware upgrade program, it accesses the firmware upgrade file in the virtual local directory and controls the vehicle's infotainment system to perform the firmware flashing operation.

[0081] In some embodiments, after successful docking, the vehicle's infotainment system can invoke the built-in firmware upgrade program. This allows the system to access a local virtual directory and retrieve the firmware upgrade file to perform a firmware flashing operation.

[0082] In some embodiments, after successful docking, the vehicle's infotainment system can initiate a firmware upgrade program to load and upgrade the firmware file. The firmware then selects a file in a local virtual directory, such as " / mnt / fw_server / TEST.BIN". This file is actually mapped to the " / FIREWARE / CAR / TEST.BIN" file on the remote server. The firmware upgrade program accesses the remote file as if it were a local file until the entire firmware upgrade process is complete.

[0083] In some embodiments, if firmware modifications (or upgrades) are frequent, it is sufficient to store the new firmware file in the server's directory. The vehicle's infotainment system can then directly select the latest file for upgrading. It is understood that in this embodiment, the firmware is stored on a computer server; conventional USB drives or other devices are simply copied directly to the USB drive. Each USB drive needs to be copied, and then the vehicle's infotainment system loads the firmware file from the USB drive for the upgrade.

[0084] 206. After the firmware flashing operation is completed, a remote directory unmounting command is sent to the file server to remove the vehicle's infotainment system from the remote directory.

[0085] In some embodiments, once the firmware flashing operation of the vehicle's infotainment system is completed, a remote target uninstallation command can be sent to the file server to unmount the local virtual directory and the remote directory in the vehicle's infotainment system.

[0086] In some embodiments, to unmount a server, you can disconnect from the remote server using the unmount command, such as "umount / mnt / fw_server", where umount is the command name indicating unmount, and / mnt / fw_server is the directory to be unmounted.

[0087] In some embodiments, the unmounting process is similar to the mounting process, also utilizing the SSHFS protocol. That is, executing "umount / mnt / sshfs" and then proceeding with the subsequent unmounting process. Step 1: The VFS kernel module calls `umount2` based on the `umount` command; Step 2: The kernel VFS notifies the FUSE module that unloading has begun; Step 3: The FUSE module sends `FUSE_DESTROY` to the SSHFS daemon; Step 4: The SSHFS daemon cleans up internal resources (including but not limited to 1. closing open file handles; 2. clearing cache; 3. terminating worker threads); Step 5: The SSHFS daemon sends an SFTP close request via the SSH connection; Step 6: Based on the SSH connection, it initiates a close SFTP session with the remote server; Step 7: The SSH server confirms the close of the SFTP session; Step 8: The SSH connection is disconnected; Step 9: The SSHFS daemon replies to the FUSE module with `FUSE_DESTROY` indicating completion; Step 10: The FUSE module controls the kernel VFS to unload the file system (file server); Step 11: The kernel VFS requests the VFS structure and releases the mount point; Step 12: The kernel VFS returns a successful unloading flag to the user; Step 13: The unloading command is completed. At this point, the SSHFS daemon exits.

[0088] This embodiment discloses a vehicle firmware flashing method that utilizes the SSHFS protocol for remote file mounting. This allows the vehicle's infotainment system to access firmware upgrade files within the local area network securely and efficiently, much like accessing local files, avoiding the slow upgrade speeds and cumbersome physical copying operations using USB drives associated with the traditional UDS protocol. This method supports concurrent access to the same firmware source by multiple vehicles, enabling unified version management and significantly improving the efficiency and convenience of frequent, large-file firmware flashing during the R&D and testing phases. Furthermore, the SSH-based security authentication and breakpoint resume mechanism ensure the reliability and data integrity of the upgrade process.

[0089] Please see Figure 3 , Figure 3 This is a flowchart illustrating another vehicle firmware flashing method disclosed in an embodiment of this application. It includes step 301.

[0090] 301. If there are multiple vehicle-mounted infotainment systems, mount all the vehicle-mounted infotainment systems on the same remote directory of the file server and concurrently read the firmware upgrade file to perform firmware upgrades.

[0091] Within a local area network (LAN), the server can connect to multiple clients. Furthermore, in some embodiments, if multiple vehicle-mounted infotainment systems exist, after establishing connections between these systems and the file server, the system units can be mounted to the same remote directory on the file server. Simultaneously, different vehicle-mounted infotainment systems can concurrently read firmware upgrade files for firmware upgrades.

[0092] In some embodiments, multiple vehicles can simultaneously access the same directory on the server, and each vehicle's infotainment system can simultaneously access the firmware upgrade file. Because the file operation is read-only, multiple client accesses will not cause any issues. No file modification or write operations are involved. For example, if different vehicle infotainment systems access the firmware in the same directory on the server, and all vehicle infotainment systems can access it simultaneously, multiple clients reading the same file concurrently usually does not cause problems, as the server independently caches the file content for each client. As long as the file content is not modified, there will be no conflicts.

[0093] This embodiment discloses a vehicle firmware flashing method that enables multiple vehicle infotainment systems to simultaneously mount and read firmware files from the same remote directory, achieving concurrent and efficient firmware upgrade capabilities for multiple vehicles. This mechanism avoids the repetitive copying and queuing issues inherent in traditional single-device or single-USB flash drive upgrade modes, significantly improving overall efficiency in multi-vehicle collaborative testing or batch upgrade scenarios. Furthermore, the read-only concurrent access design ensures file consistency and system stability when multiple clients operate simultaneously, effectively supporting application scenarios requiring rapid iteration and centralized management, such as vehicle R&D and production line testing.

[0094] Please see Figure 4, Figure 4 This is a flowchart illustrating another vehicle firmware flashing method disclosed in an embodiment of this application. It includes steps 401-403.

[0095] 401. Send a directory listing query request to the file server to obtain a list of firmware files in the remote directory.

[0096] In some embodiments, combined with Figure 2 In the illustrated embodiment, during the firmware upgrade process of the vehicle's infotainment system, it is necessary to locate the specific firmware upgrade file. Therefore, in this embodiment, a directory listing query request can be sent to a file server to obtain a list of firmware files in a remote directory. It is understood that the firmware file list may contain firmware upgrade files of different versions and different programs; this is not specifically limited here.

[0097] 402. Trigger user selection operation to determine the firmware upgrade file of the firmware to be upgraded from the firmware file list.

[0098] In some embodiments, the vehicle's infotainment system displays a list of firmware files on the in-vehicle interface, allowing users (such as test engineers) to select the appropriate firmware upgrade file based on information such as version number and date.

[0099] Furthermore, in the firmware file list, users can automatically filter according to preset conditions, such as selecting files whose filenames contain the latest version identifier or the most recent modification time. Thus, the vehicle's infotainment system determines the firmware upgrade file based on the received remote control commands or instructions in the configuration file.

[0100] 403. Verify the integrity of the firmware upgrade file of the firmware to be upgraded, and after the verification is successful, proceed with the step of accessing the firmware upgrade file in the virtual local directory.

[0101] In some embodiments, after determining the firmware upgrade file, the vehicle's infotainment system performs an integrity check on the file before reading its contents. For example, this could involve file hash verification, file size verification, or digital signature verification; specific methods are not limited here.

[0102] In some embodiments, file hash verification can calculate the file's MD5, SHA-256, or other hash values ​​and compare them with the correct hash values ​​pre-stored on the server (which can be obtained from a separate verification file or server response). File size verification can check whether the file size matches the expected size. If the firmware upgrade file includes a digital signature, digital signature verification can be performed to verify the signature's legitimacy.

[0103] After successful verification, proceed to step 205 to begin the firmware flashing operation; if verification fails, the system may display an error message and terminate the upgrade process, or automatically retrieve the file list and select other available files.

[0104] This embodiment discloses a vehicle firmware flashing method that, by introducing a file list query, user-visual selection, and integrity verification mechanism, achieves centralized management of multiple firmware versions and a secure and controllable upgrade process. Users can intuitively obtain and select the target firmware file, avoiding version selection errors. Simultaneously, through hash verification, size verification, or digital signatures, the integrity and legitimacy of the upgrade file are ensured, effectively preventing upgrade failures or device malfunctions due to file corruption or tampering. This mechanism improves the convenience of firmware upgrade operations while enhancing system reliability and security, making it suitable for vehicle R&D and testing scenarios where multiple versions coexist and frequent verification is required.

[0105] It should be understood that although the steps in the flowcharts of the embodiments described above are shown sequentially according to the arrows, these steps are not necessarily executed in the order indicated by the arrows. Unless explicitly stated herein, there is no strict order restriction on the execution of these steps, and they can be executed in other orders. Moreover, at least some steps in the flowcharts of the embodiments described above may include multiple steps or multiple stages. These steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these steps or stages is not necessarily sequential, but can be performed alternately or in turn with other steps or at least a portion of the steps or stages of other steps.

[0106] The above describes a method for flashing vehicle firmware according to embodiments of this application. The following describes the apparatus for performing the above-described method for flashing vehicle firmware. Please refer to... Figure 5 , Figure 5 This is a schematic diagram of a vehicle firmware flashing device provided in an embodiment of this application. Figure 5 As shown, the vehicle firmware flashing device includes:

[0107] Setting unit 501 is used to set up a file server within a local area network and create a remote directory on the file server for storing firmware upgrade files; wherein, the remote directory stores firmware upgrade files for upgrading vehicle infotainment system firmware.

[0108] Configuration unit 502 is used to deploy and start a remote file mounting service on a file server, configure the access parameters of the remote file mounting service, and configure the file server as a server with a fixed local area network address.

[0109] Access unit 503 is used to connect the vehicle's infotainment system to the local area network and enable the vehicle's infotainment system to act as a client to send a remote directory mount command to the file server.

[0110] Mapping unit 504 is used to map a remote directory to a virtual local directory of the vehicle's infotainment system after the remote directory mount command has been authenticated.

[0111] The control unit 505 is used to access the firmware upgrade file in the virtual local directory and control the vehicle's infotainment system to perform firmware flashing operations when the vehicle's infotainment system calls the built-in firmware upgrade program.

[0112] The sending unit 506 is used to send a remote directory unmounting command to the file server after the firmware flashing operation is completed, thereby removing the vehicle's infotainment system from the remote directory.

[0113] Exemplarily, the device further includes: a mounting unit 507;

[0114] Mounting unit 507 is used to mount the vehicle infotainment systems of multiple vehicles to the same remote directory on the file server when there are multiple vehicle infotainment systems, and concurrently read firmware upgrade files to perform firmware upgrades.

[0115] For example, the device further includes: a triggering unit 508 and a verification unit 509;

[0116] The sending unit 506 is also used to send a directory list query request to the file server to obtain a list of firmware files in the remote directory;

[0117] Trigger unit 508 is used to trigger a user selection operation to determine the firmware upgrade file of the firmware to be upgraded from the firmware file list;

[0118] Verification unit 509 is used to verify the integrity of the firmware upgrade file of the firmware to be upgraded, and after the verification is passed, it performs the step of accessing the firmware upgrade file in the virtual local directory.

[0119] For example,

[0120] The remote file mounting service is a file system service based on the SSH protocol;

[0121] The vehicle's infotainment system connects to the local area network via a wireless network;

[0122] Remote target mount instructions include one or more of the following: server IP address, remote directory path, local mapping path, or authentication information;

[0123] Access parameters include one or more of the following: keep-alive time interval, connection disconnection conditions, login account and password, and communication port number;

[0124] Firmware files can be in at least one of the following formats: .bin, .hex, or .s19.

[0125] A file server is an electronic device with SSH service and SSHFS software installed.

[0126] This application also provides an electronic device in its embodiments. (See reference...) Figure 6 The diagram illustrates a structural schematic of an electronic device suitable for implementing the vehicle firmware flashing method in the embodiments of this application. The electronic device in the embodiments of this application may include, but is not limited to, fixed terminals such as mobile phones, laptops, PDAs (personal digital assistants), PADs (tablet computers), desktop computers, etc. Figure 6 The electronic device shown is merely an example and should not impose any limitation on the functionality and scope of use of the embodiments of this application.

[0127] like Figure 6 As shown, the electronic device may include a processing unit (e.g., a central processing unit, a graphics processing unit, etc.) 601, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 602 or a program loaded from a storage device 608 into a random access memory (RAM) 603. When the electronic device is powered on, the RAM 603 also stores various programs and data required for the operation of the electronic device. The processing unit 601, ROM 602, and RAM 603 are interconnected via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0128] Typically, the following devices can be connected to I / O interface 605: input devices 606 including, for example, touchscreens, touchpads, keyboards, mice, cameras, microphones, accelerometers, gyroscopes, etc.; output devices 607 including, for example, liquid crystal displays (LCDs), speakers, vibrators, etc.; storage devices 608 including, for example, memory cards, hard drives, etc.; and communication devices 609. Communication device 609 allows electronic devices to communicate wirelessly or wiredly with other devices to exchange data. Although Figure 6 Electronic devices with various devices are shown, but it should be understood that it is not required to implement or have all of the devices shown. More or fewer devices may be implemented or have alternatively.

[0129] This application also provides a computer program product including computer-readable instructions, which, when executed on an electronic device, cause the electronic device to implement any of the vehicle firmware flashing methods provided in this application.

[0130] This application also provides a computer-readable storage medium that carries one or more computer programs. When the one or more computer programs are executed by an electronic device, the electronic device can implement any of the vehicle firmware flashing methods provided in this application.

[0131] It should also be noted that the device embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. In addition, in the device embodiment drawings provided in this application, the connection relationship between modules indicates that they have a communication connection, which can be implemented as one or more communication buses or signal lines.

[0132] Through the above description of the embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary general-purpose hardware, or it can be implemented by special-purpose hardware including application-specific integrated circuits, special-purpose CPUs, special-purpose memory, special-purpose components, etc. Generally, any function performed by a computer program can be easily implemented by corresponding hardware, and the specific hardware structure used to implement the same function can also be diverse, such as analog circuits, digital circuits, or special-purpose circuits. However, for this application, software program implementation is more often a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a readable storage medium, such as a computer floppy disk, USB flash drive, mobile hard disk, ROM, RAM, magnetic disk, or optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, training equipment, or network device, etc.) to execute the methods described in the various embodiments of this application.

[0133] In the above embodiments, the implementation can be achieved, in whole or in part, through software, hardware, firmware, or any combination thereof. When implemented in software, it can be implemented, in whole or in part, in the form of a computer program product.

[0134] The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer may be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions may be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions may be transmitted from one website, computer, training device, or data center to another website, computer, training device, or data center via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium may be any available medium that a computer can store or a data storage device such as a training device or data center that integrates one or more available media. The available medium may be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., solid-state disk (SSD)).

Claims

1. A method for flashing vehicle firmware, characterized in that, The method includes: A file server is set up within the local area network, and a remote directory for storing firmware upgrade files is created on the file server; wherein, the remote directory stores firmware upgrade files for upgrading the vehicle's infotainment system firmware; Deploy and start a remote file mounting service on the file server, configure the access parameters of the remote file mounting service, and configure the file server as a server with a fixed local area network address; Connect the vehicle's infotainment system (VIS) to the local area network and make the VIS act as a client to send a remote directory mount command to the file server. After the remote directory mount command is authenticated, the remote directory is mapped to the vehicle's in-vehicle infotainment system's virtual local directory; When the vehicle's infotainment system calls the built-in firmware upgrade program, it accesses the firmware upgrade file in the virtual local directory and controls the vehicle's infotainment system to perform a firmware flashing operation. Once the firmware flashing operation is complete, a remote directory uninstallation command is sent to the file server to unmount the vehicle's infotainment system from the remote directory.

2. The vehicle firmware flashing method according to claim 1, characterized in that, The method further includes: If there are multiple vehicle-mounted infotainment systems, the infotainment systems of all the vehicles are mounted on the same remote directory of the file server, and the firmware upgrade file is read and the firmware is upgraded concurrently.

3. The vehicle firmware flashing method according to claim 1, characterized in that, After mapping the remote directory to the vehicle's in-vehicle infotainment system's virtual local directory, the method further includes: Send a directory list query request to the file server to obtain a list of firmware files in the remote directory; Trigger a user selection action to determine the firmware upgrade file for the firmware to be upgraded from the firmware file list; Verify the integrity of the firmware upgrade file of the firmware to be upgraded, and after the verification is successful, execute the step of accessing the firmware upgrade file in the virtual local directory.

4. The method for flashing vehicle firmware according to any one of claims 1 to 3, characterized in that, The remote file mounting service is a file system service based on the SSH protocol; The vehicle's infotainment system connects to the local area network via a wireless network; The remote target mounting instruction includes one or more of the following: the server's IP address, remote directory path, local mapping path, or authentication information. The access parameters include one or more of the following: keep-alive time interval, connection disconnection condition, login account and password, and communication port number; The firmware file format includes at least one of .bin, .hex, or .s19; The file server is an electronic device with SSH service and SSHFS software installed.

5. A vehicle firmware flashing system, characterized in that, The system includes: A file server, deployed within a local area network, is used to store firmware upgrade files and provide remote directory mounting services. At least one vehicle infotainment system is configured to access the local area network and act as a client to mount a remote directory on the file server; The vehicle's infotainment system includes an upgrade module for accessing firmware upgrade files in a mounted virtual local directory and performing firmware flashing operations.

6. The vehicle firmware flashing system according to claim 1, characterized in that, The file server supports the SSHFS protocol, and the vehicle's infotainment system connects to the local area network via a wireless network.

7. A device for flashing vehicle firmware, characterized in that, include: The configuration unit is used to set up a file server within a local area network and create a remote directory on the file server for storing firmware upgrade files; wherein, the remote directory stores firmware upgrade files for upgrading the vehicle's infotainment system firmware. The configuration unit is used to deploy and start a remote file mounting service on the file server, configure the access parameters of the remote file mounting service, and configure the file server as a server with a fixed local area network address. The access unit is used to connect the vehicle's infotainment system (VIS) to the local area network (LAN) and enable the VIS to act as a client to send a remote directory mount command to the file server. The mapping unit is used to map the remote directory to the vehicle's in-vehicle infotainment system as a virtual local directory after the remote directory mount command is authenticated. The control unit is used to access the firmware upgrade file in the virtual local directory and control the vehicle's infotainment system to perform firmware flashing operations when the vehicle's infotainment system calls the built-in firmware upgrade program. The sending unit is used to send a remote directory uninstallation command to the file server after the firmware flashing operation is completed, thereby unmounting the vehicle's infotainment system from the remote directory.

8. A computer program product, characterized in that, It includes computer-readable instructions that, when executed on an electronic device, cause the electronic device to implement the vehicle firmware flashing method as described in any one of claims 1 to 5.

9. An electronic device, characterized in that, It includes at least one processor and a memory connected to the processor, wherein: The memory is used to store computer programs; The processor is used to execute the computer program to enable the electronic device to implement the vehicle firmware flashing method as described in any one of claims 1 to 4.

10. A computer storage medium, characterized in that, The storage medium carries one or more computer programs that, when executed by an electronic device, enable the electronic device to implement the vehicle firmware flashing method as described in any one of claims 1 to 4.