Prioritized data download for vehicle systems

JP2026102461APending Publication Date: 2026-06-23TOYOTA JIDOSHA KK

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
TOYOTA JIDOSHA KK
Filing Date
2025-11-13
Publication Date
2026-06-23

AI Technical Summary

Technical Problem

The challenge of managing multiple data downloads in connected vehicles to ensure critical and time-sensitive information is prioritized, preventing resource overload and maintaining safety and efficiency.

Method used

Implementing a data prioritization system that orders downloads based on priority levels assigned to each request, considering data type and vehicle state, ensuring that critical data is processed first.

Benefits of technology

Ensures that critical data is delivered promptly, maintaining vehicle safety and functionality by managing bandwidth and processing resources effectively.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026102461000001_ABST
    Figure 2026102461000001_ABST
Patent Text Reader

Abstract

To provide a method for downloading priority-based data related to vehicle systems. [Solution] Priority-based data download is performed by receiving a first download request via a mobile computing network in the vehicle, receiving a second download request via the mobile computing network, determining the priority level associated with each of the first and second download requests based on the data type, and sequentially downloading the first and second download requests based on the associated priority levels.
Need to check novelty before this filing date? Find Prior Art

Description

Background Art

[0001] Recent vehicles are increasingly connected to external systems (e.g., cloud servers, traffic management systems, other vehicles, etc.) via wireless technologies such as cellular networks, Wi-Fi, and satellite links. In recent connected vehicles, data originates from multiple sources and is used for various purposes ranging from safety-critical functions to improving the user experience.

Brief Description of the Drawings

[0002] Aspects of the present disclosure are best understood by reading the following detailed description in conjunction with the accompanying drawings. Note that various features are not drawn to scale according to standard practice in the industry. In fact, for clarity of explanation, the dimensions of various features may be arbitrarily increased or reduced.

[0003] [Figure 1] A schematic diagram of a system for downloading data based on priority, according to at least one embodiment of the present disclosure. [Figure 2] An operation flow for downloading data based on priority, according to at least one embodiment of the present disclosure. [Figure 3] An operation flow for determining a priority level associated with a download request based on data type, according to at least one embodiment of the present disclosure. [Figure 4] An operation flow for sequentially executing downloads based on an associated priority level, according to at least one embodiment of the present disclosure. [Figure 5] An operation flow for comparing the priority levels of download requests, according to at least one embodiment of the present disclosure. [Figure 6] A block diagram of a hardware configuration for downloading data based on priority, according to at least some embodiments of the present disclosure. [Figure 7]This is a table of example data types according to at least one embodiment of the subject disclosure. [Figure 8] This is a table of example priority matrices according to at least one embodiment of the subject disclosure. [Modes for carrying out the invention]

[0004] The following disclosure provides numerous different embodiments or examples that implement different features of the subject matter provided. For the sake of brevity of this disclosure, specific examples relating to components, values, operations, materials, arrangements, or similars are described below. Of course, these are merely examples and are not intended to be limiting. Other components, values, operations, materials, arrangements, or similars are conceivable. In addition, this disclosure may repeat reference numbers and / or reference letters in various examples. This repetition is for the sake of simplification and clarity and does not in itself define relationships between the various embodiments and / or configurations described.

[0005] When multiple types of data need to be downloaded simultaneously, prioritization ensures that the most critical and time-sensitive data is delivered first, while maintaining safety, functionality, and efficiency. Effectively managing this data flow is crucial for the performance and safety of advanced vehicle systems. Recent vehicle connectivity with external servers via wireless technology allows vehicles to receive real-time information, such as navigation data (e.g., map data, route search results, surrounding information), traffic condition data (e.g., congestion reports, accident alerts), remote operation data and diagnostics (e.g., key lock / unlock, air conditioning on / off, alarm activation, battery status, vehicle health checks), software updates (e.g., infotainment systems, safety features, autonomous driving software), weather data (e.g., weather forecasts for route planning), user-specific data related to vehicle management (e.g., settings for seats, mirrors, climate control, account authentication, voice recognition databases), entertainment data (e.g., music, videos, images, web searches), and emergency-related data (e.g., emergency calls, security patches). However, immediately downloading multiple types of data can place an excessive burden on a vehicle's connectivity and processing resources. When a vehicle receives multiple download requests, for example, when downloading a music stream, it receives a request for download information about points of interest (POIs) while simultaneously downloading a music stream, the vehicle cannot perform multiple downloads at the same time. Instead, the vehicle must complete one download before proceeding with another. In the music stream example, the download may not complete until the download request is canceled. Therefore, effective data prioritization is beneficial in ensuring that important updates are processed first, so that the vehicle remains able to operate safely and efficiently. Prioritization also helps manage bandwidth limitations (e.g., cellular network speed, Wi-Fi range) to ensure that the vehicle can receive relevant information.

[0006] In at least some embodiments described herein, the solution to the above-mentioned problem is to download data based on priority. That is, when a vehicle receives multiple download requests, the downloads are performed in an order based on the priority level assigned to each download request based on the type of data in each download request. In this way, multiple downloads are performed by the vehicle in the appropriate order.

[0007] Figure 1 is a schematic diagram of a system for downloading data based on priority, according to at least one embodiment of the subject disclosure. The system includes a plurality of sensors 104 and a user interface 106 connected to a mobile computing network 102 within a vehicle 100. The vehicle 100 further communicates with a mobile terminal 110 and a network 108 through the mobile computing network 102. The sensors 104 include a battery sensor 104A, an engine sensor 104B, a location sensor 104C, and a motion sensor 104D. The sensors 104 are configured to transmit sensor data 114 to the mobile computing network 102. The mobile terminal 110 communicates with the network 108. The user interface 106 is configured to transmit download requests 112 to the mobile computing network 102. In at least some embodiments, the mobile computing network 102, the sensors 104, and the user interface 106 are part of a single device, such as a vehicle 100.

[0008] In at least some embodiments, the vehicle 100 is configured to send notifications and commands to a mobile terminal 110 and to receive applications from the mobile terminal 110. In at least some embodiments, the vehicle 100 communicates with the mobile terminal 110 through a mobile computing network 102. In at least some embodiments, the vehicle 100 communicates with the mobile terminal 110 through a network 108. In at least some embodiments, the vehicle 100 is an automobile or an autonomous vehicle.

[0009] In at least some embodiments, the mobile computing network 102 is configured to receive download requests 112 from the user interface 106 and sensor data 114 from the sensor 104. In at least some embodiments, the mobile computing network 102 integrates wireless communication technology and computing systems within the vehicle 100 to support a variety of connected services, applications, and functions. In at least some embodiments, the mobile computing network 102 is configured to enable the vehicle 100 to interact with external systems (e.g., the Internet, cloud services, other vehicles, or infrastructure) and to support onboard systems that enhance the driving experience, safety, navigation, and overall functionality of the vehicle 100. In at least some embodiments, the mobile computing network 102 is a Controller Area Network (CAN), an Ethernet network, a Peripheral Component Interconnect Express (PCIe) network, a Universal Serial Bus (USB) network, or a Local Internet Network (LIN).

[0010] Sensor 104 is configured to transmit sensor data 114 to a mobile computing network 102. Sensor 104 includes a battery sensor 104A, an engine sensor 104B, a location sensor 104C, and a motion sensor 104D. In at least some embodiments, the data types of the sensor data 114 provided by the battery sensor 104A, engine sensor 104B, location sensor 104C, and motion sensor 104D are different. In at least some embodiments, the battery sensor 104A is configured to detect the remaining capacity of the vehicle battery. In at least some embodiments, the battery sensor 104A is configured to detect whether a charging operation is applied to the vehicle battery. In at least some embodiments, the battery sensor 104A is configured to detect whether the vehicle 100 is in power-saving mode. In at least some embodiments, the engine sensor 104B is configured to detect whether the vehicle 100 is in a power-on or power-off state. In at least some embodiments, the location sensor 104C is configured to detect the geographical location of the vehicle 100. In at least some embodiments, the location sensor 104C is configured to determine the precise position, orientation, and movement of the vehicle 100 in real time. In at least some embodiments, the location sensor 104C is a GPS (Global Positioning System), accelerometer, gyroscope, compass, etc. In at least some embodiments, the motion sensor 104D is configured to detect the vehicle state of the vehicle 100. In at least some embodiments, the vehicle state indicates whether the vehicle 100 is running or stopped. In at least some embodiments, the motion sensor 104D is configured to detect and measure the movement or acceleration of the vehicle 100. In at least some embodiments, the motion sensor 104D is configured to measure the acceleration, angular velocity, and change of direction of the vehicle 100. In at least some embodiments, the motion sensor 104D is an accelerometer, gyroscope, inertial measurement unit (IMU), radar sensor, or camera-based system.

[0011] The user interface 106 is configured to send download requests to the mobile computing network 102. In at least some embodiments, the user interface 106 is configured to allow the driver, passengers, and other users to interact with various systems, technologies, and features of the vehicle. In at least some embodiments, the user interface 106 is configured to allow selection of a single location for performing all downloads, or individual locations for specific downloads or downloads of specific data types. In at least some embodiments, the user interface 106 is a smartphone, touchscreen display, voice control system, head-up display (HUD), gesture control, or mobile integration and connectivity system. In at least some embodiments, the user interface 106 is located outside the vehicle.

[0012] In at least some embodiments, network 108 is configured to enable communication between a mobile terminal 110 and the vehicle 100's mobile computing network 102. In at least some embodiments, network 108 is configured to connect vehicle 100 to an external system, another vehicle, or the cloud. In at least some embodiments, network 108 is configured to enable real-time data exchange, remote diagnostics, entertainment functions, and advanced driver-assistance systems (ADAS). In at least some embodiments, network 108 is a wired network, 4G LTE network, 5G network, or Wi-Fi network that enables vehicle-to-vehicle (V2V) communication or vehicle-to-all (V2X) communication.

[0013] The mobile terminal 110 is configured to communicate with the vehicle 100 via the mobile computing network 102 or network 108. In at least some embodiments, the mobile terminal 110 is configured to receive notifications from the vehicle 100. In at least some embodiments, the mobile terminal 110 is configured to send applications to the vehicle 100. In at least some embodiments, the mobile terminal 110 is a portable device configured to connect to a network and exchange data. In at least some embodiments, the mobile terminal 110 is a smartphone, tablet, smartwatch, portable laptop, or smart glasses.

[0014] A download request 112 is transmitted to the mobile computing network 102 via the user interface 106. In at least some embodiments, a download request 112 includes a request to download applications or data related to operating system updates, entertainment, navigation, vehicle management, security, and emergency services. In at least some embodiments, entertainment data includes music data, video data, and image data. In at least some embodiments, navigation data includes map data, route search result data (if route searching is performed on a server), surrounding information, and traffic conditions. In at least some embodiments, vehicle management data includes locking / unlocking the keys, turning the air conditioning on / off, and activating alarms. In at least some embodiments, security data includes security patches. In at least some embodiments, emergency data includes emergency calls. In at least some embodiments, a download request 112 includes a request to download applications or data related to web searches, account authentication, and voice recognition databases.

[0015] Sensor data 114 is transmitted by sensor 104 to the mobile computing network 102. In at least some embodiments, sensor data 114 includes data of different data types detected by different sensors among the sensors 104. In at least some embodiments, the data type varies depending on the sensor design. In at least some embodiments, sensor data 114 includes vehicle battery status data, vehicle status data, geographic location data, etc.

[0016] Figure 2 is an operation flow for downloading data based on priority, according to at least one embodiment of the subject disclosure. The operation flow provides a method for downloading data based on priority. In at least some embodiments, the method is performed by a vehicle, for example, vehicle 100 shown in Figure 1, or by a processor of an integrated circuit that includes a section for performing a specific operation, as described below, for example, processor 662 shown in Figure 6.

[0017] In S220, the receiving section of the processor receives a first download request. In at least some embodiments, the receiving section receives the first download request from a mobile computing network. In at least some embodiments, the first download request includes downloading applications or data related to operating system updates, entertainment, navigation, vehicle management, security, and emergency services.

[0018] In S222, the processor's execution section executes the first download request. In at least some embodiments, the execution section executes the download of the first download request before receiving a second download request. In at least some embodiments, the execution section executes the download of the first download request based on the priority level of the first download request.

[0019] In S224, the receiving section of the processor receives a second download request. In at least some embodiments, the receiving section receives the second download request from a mobile computing network. In at least some embodiments, the second download request includes downloading applications or data related to operating system updates, entertainment, navigation, vehicle management, security, and emergency services.

[0020] In S226, the processor's decision section determines the priority level associated with each download request based on the data type. In at least some embodiments, the decision section determines the priority level associated with each of the first and second download requests based on the data type. In at least some embodiments, the decision section determines the priority level based on the vehicle state. In at least some embodiments, the vehicle state is either running or stopped. In at least some embodiments, the decision section performs the operation flow shown in Figure 3, which is described below.

[0021] In S228, the processor's execution section performs sequential downloads based on the associated priority levels. In at least some embodiments, the execution section sequentially performs downloads of the first download request and the second download request based on the associated priority levels. In at least some embodiments, the execution section performs the operation flow shown in Figure 4, which is described below.

[0022] FIG. 3 is an operation flow for determining a priority level associated with a download request based on a data type, according to at least one embodiment of the disclosure of the subject matter. The operation flow provides a method for determining a priority level associated with a download request based on a data type. In at least some embodiments, the method is performed by a vehicle, such as vehicle 100 shown in FIG. 1, or a processor of an integrated circuit that includes sections for performing particular operations described below, such as processor 662 shown in FIG. 6.

[0023] At S330, a determination section of the processor determines the data type and detects the vehicle state. In at least some embodiments, an execution section determines the vehicle state of the vehicle based on sensor data. In at least some embodiments, the determination section determines a priority level associated with each of a first download request and a second download request based on the data type and the vehicle state.

[0024] Figure 7 is a table of examples of data types according to at least one embodiment of the subject disclosure. The table provides examples of different data and corresponding data types. In at least some embodiments, the emergency data type includes emergency call data. In at least some embodiments, the emergency security data type includes security patch data. In at least some embodiments, the navigation data type includes (server-operated) route search result data, surrounding information data, and traffic condition data. In at least some embodiments, the vehicle management data type includes (remote-operated) air conditioning on / off data, (remote-operated) alarm activation data, and (remote-operated) key lock / unlock data. In at least some embodiments, the non-emergency data stream data type includes data related to OS updates and databases such as speech recognition. In at least some embodiments, other data types include account authentication data and web search data. In at least some embodiments, different types of data are prioritized according to their urgency and importance. In at least some embodiments, the processor or a section thereof maintains efficiency and performance and enables critical services to be available even when resources are limited. In at least some embodiments, emergency calls take the highest priority because they involve urgent situations where life or safety is at risk and delays or interruptions could have serious consequences. In at least some embodiments, real-time traffic information and online POI search are services that provide real-time data on navigation, location-based services, or user queries, which are important but not as critical as emergency calls. In at least some embodiments, media streaming services, such as video or music streaming, are useful but not as critical as emergency services or real-time navigation. In at least some embodiments, background application data consumes fewer resources and is less affected by time, so such background application data takes the lowest priority.

[0025] In at least some embodiments, the vehicle state is one of operating or stopped. In at least some embodiments, the vehicle state is considered "stopped" when the vehicle transmission is in "parking", "neutral", or otherwise not engaged with a gear. In at least some embodiments, the vehicle state is considered "stopped" when the vehicle motion sensor does not detect motion for a predetermined time. In at least some embodiments, the vehicle state is considered "stopped" even if the engine is operating. In at least some embodiments, the vehicle state is considered "operating" when the vehicle is not considered "stopped".

[0026] In S332, the processor or a section thereof determines whether a specified priority level is included. In at least some embodiments, the processor or a section thereof determines whether the first download request and the second download request include a specified priority level. In at least some embodiments, at least one of the first download request and the second download request includes a specified priority level. In at least some embodiments, the priority is specified in a download request, for example, by a user, an operating system, or an application (including default and third parties) issuing the download request. In at least some embodiments, the vehicle takes into account a specified priority in addition to the type of data of the download request. In response to the processor determining that a specified priority level is included, the operation flow proceeds to a determination in S334 as to whether the specified priority level is higher than a threshold level. In response to the processor determining that a specified priority level is not included, the operation flow proceeds to a determination of a priority level based on the data type and the vehicle state in S338.

[0027] In S334, the processor or its section determines whether the specified priority level is higher than the threshold level. If the processor determines that the specified priority level is not higher than the threshold level, the operation flow proceeds to S335, where the priority level is determined based on the data type, vehicle state, and specified priority level. If the processor determines that the specified priority level is higher than the threshold level, the operation flow proceeds to S336, where the specified priority level is ignored.

[0028] In S335, the decision section determines the priority level based on the data type, vehicle status, and specified priority level. In at least some embodiments, the decision section further determines the priority level of each of the first and second download requests based on the specified priority level, depending on whether it has determined that at least one of the first and second download requests includes the specified priority level. The operation flow ends depending on whether the processor has determined the priority level based on the data type, vehicle status, and specified priority level.

[0029] In S336, the processor or a section thereof ignores the specified priority level. In at least some embodiments, the processor or a section thereof ignores the specified priority level if it is higher than a threshold priority level. In at least some embodiments, the priority level specified by the download request has an upper limit that is less than the priority level assigned to the emergency call.

[0030] In S338, the decision section determines the priority level based on the data type and vehicle state. In at least some embodiments, the decision section determines the priority levels for the first and second download requests based on the data type and vehicle state. In at least some embodiments, the vehicle state is either running or stopped. In at least some embodiments, when the vehicle is running, the priority assigned to the first type of data (e.g., navigation data) is higher than the priority assigned to the second type of data (e.g., entertainment data). In at least some embodiments, when the vehicle is stopped, the priority assigned to the second type of data is higher than the priority assigned to the first type of data. In at least some embodiments, the priority level is a matrix having data types on one axis and vehicle state on another axis.

[0031] Figure 8 is a table of examples of priority matrices according to at least one embodiment of the subject disclosure. The table provides examples of priority matrices for different data types under different vehicle states. In at least some embodiments, an example of data priority level ranking is Emergency Call >> Real-time traffic information, online POI search, etc. >> Media streaming >> Background applications. In at least some embodiments, emergency data types have the highest priority ranking under each vehicle state, followed by emergency security data types and vehicle management data types. In at least some embodiments, navigation data types have a higher priority ranking under active vehicle states than under stationary vehicle states. In at least some embodiments, entertainment data types have a higher priority ranking under stationary vehicle states than under active vehicle states. In at least some embodiments, non-emergency data stream data types have a higher priority ranking under stationary vehicle states than under active vehicle states.

[0032] Figure 4 is an operation flow that performs sequential downloads based on associated priority levels, according to at least one embodiment of the subject disclosure. The operation flow provides a method for performing sequential downloads based on associated priority levels. In at least some embodiments, the method is performed by a vehicle, for example, vehicle 100 shown in Figure 1, or by a processor of an integrated circuit that includes a section for performing specific operations, as described below, for example, processor 662 shown in Figure 6.

[0033] In S440, the processor or a section thereof determines whether the vehicle is in power-saving mode or whether the remaining capacity of the vehicle battery is below a threshold capacity. Depending on whether the processor has determined that the vehicle is in power-saving mode or that the remaining capacity is below a threshold capacity, the operation flow proceeds to S442, where it determines whether the priority level is below a predetermined level. Depending on whether the processor has determined that the vehicle is not in power-saving mode and that the remaining capacity is not below a threshold capacity, the operation flow proceeds to S446, where it compares the priority levels of the first download request and the second download request.

[0034] In S442, the processor or its section determines whether the priority level is below a predetermined level. In at least some embodiments, the processor or its section determines whether there are any download requests associated with a priority level that is below the predetermined level. Depending on whether the processor determines that the priority level is below the predetermined level, the operation flow proceeds to abandon the download in S444. Depending on whether the processor determines that the priority level is not below the predetermined level, the operation flow proceeds to compare the priority levels of the first download request and the second download request in S446.

[0035] In S444, the processor or its section abandons the download. In at least some embodiments, the processor or its section abandons the download of any download request associated with a priority level below a predetermined priority level, depending on whether the remaining capacity is below a threshold capacity. In at least some embodiments, when the remaining capacity of the vehicle's battery is below a threshold, the download of data types with a priority below a predetermined value is prohibited, even if there is only one download request. In at least some embodiments, the processor or its section abandons the download of any download request associated with a priority level below a predetermined priority level, depending on whether the vehicle is in power-saving mode. In at least some embodiments, when the vehicle is in power-saving mode, the download of data types with a priority below a predetermined value is prohibited, even if there is only one download request. In at least some embodiments, the predetermined priority value when the vehicle is in power-saving mode is not necessarily the same as when the vehicle's battery capacity is low. The operation flow ends depending on whether the processor abandons the download.

[0036] In S446, the processor or a section thereof compares the priority levels of the first download request and the second download request. In at least some embodiments, the processor or a section thereof compares the priority level of the second download request with the priority level of the first download request. In at least some embodiments, the processor or a section thereof performs the operation shown in Figure 5, which is described below.

[0037] Figure 5 is an operational flow for comparing the priority levels of download requests according to at least one embodiment of the subject disclosure. The operational flow provides a method for comparing the priority levels of download requests. In at least some embodiments, the method is performed by a vehicle, for example, vehicle 100 shown in Figure 1, or by a processor of an integrated circuit that includes a section for performing a specific operation, as described below, for example, processor 662 shown in Figure 6.

[0038] In S550, the processor or a section thereof determines whether the priority level of the second download request is higher. In at least some embodiments, the processor or a section thereof determines whether the priority level of the second download request is higher than that of the first download request. Depending on whether the processor determines that the priority level of the second download request is higher, the operation flow proceeds to the abortion of the first download request in S552. Depending on whether the processor determines that the priority level of the second download request is not higher, the operation flow proceeds to the determination in S553 regarding whether the first download request has been completed.

[0039] In S552, the processor or a section thereof aborts the first download request. In at least some embodiments, the processor or a section thereof aborts the execution of the download for the first download request in response to receiving the second download request. In response to the processor aborting the execution of the download for the first download request, the operation flow proceeds to the execution of the second download request in S554.

[0040] In S553, the processor or its section determines whether the first download request has been completed. Depending on whether the processor has determined that the first download request has been completed, the operation flow proceeds to the execution of the second download request in S557. Depending on whether the processor has determined that the first download request has not been completed, the operation flow proceeds to the completion of the first download request in S555.

[0041] In S554, the execution section executes the second download request. In at least some embodiments, the execution section aborts the execution of the download for the first download request and then executes and completes the download for the second download request. Depending on that the execution section has completed the execution of the download for the second download request, the operation flow proceeds to the resumption of the first download request in S556.

[0042] In S555, the execution section completes the first download request. In at least some embodiments, the execution section completes the execution of the first download request. In at least some embodiments, the execution section completes the execution of the first download request before starting the execution of the second download request, depending on whether the priority level of the second download request is higher than that of the first download request. As the execution section has completed the execution of the first download request, the operation flow proceeds to the execution of the second download request in S557.

[0043] In S556, the execution section resumes the first download request. In at least some embodiments, the execution section resumes the download of the first download request in response to having completed the execution of the second download request. The operation flow ends in response to the processor resuming the first download request.

[0044] In S557, the execution section executes the second download request. In at least some embodiments, the execution section executes the download request for the second download request after completing the download execution for the first download request.

[0045] Figure 6 is a block diagram of a hardware configuration for downloading data based on priority, according to at least some embodiments of the subject disclosure.

[0046] A preferred hardware configuration includes a mobile computing network 660, which interacts with the touchscreen display 690 directly or through a network 692. In at least some embodiments, the mobile computing network 660 is a network of the vehicle's computer or other computing devices that receive input or commands from the touchscreen display 690. In at least some embodiments, the mobile computing network 660 is a computer system that implements computer-readable instructions to perform downloads based on priority.

[0047] The mobile computing network 660 includes a processor 662, a storage unit 670, an input / output interface 680, and a communication interface 682. In at least some embodiments, the processor 662 is a processor or programmable circuit that executes instructions to a processor or programmable circuit to perform an operation according to those instructions. In at least some embodiments, the processor 662 includes analog or digital programmable circuitry, or any combination thereof. In at least some embodiments, the processor 662 includes physically isolated storage or circuitry that interacts through a protocol. In at least some embodiments, the storage unit 670 includes a non-volatile computer-readable medium that can store enforceable and non-enforceable data accessed by the processor 662 during instruction execution. The communication interface 682 transmits and receives data from the network 692. The input / output interface 680 connects to various input and output units such as a touchscreen display 690 via parallel ports, serial ports, keyboard ports, mouse ports, monitor ports, touchscreens, mobile device connections, and similar types, to accept commands and present information. In some embodiments, the storage unit 670 is located outside the mobile computing network 660.

[0048] The processor 662 includes a receive section 664, a decision section 666, and an execution section 668. The storage unit 670 includes a download request 672, a priority level 674, and sensor data 676.

[0049] The receiving section 664 is a circuit or instruction of the processor 662 configured to receive download requests. In at least some embodiments, the receiving section 664 is configured to receive a first download request and a second download request. In at least some embodiments, the receiving section 664 utilizes information in the storage unit 670, such as a download request 672 and a priority level 674. In at least some embodiments, the receiving section 664 includes subsections that perform additional functions as shown in the flowchart above. In at least some embodiments, such subsections are referred to by names associated with their corresponding functions.

[0050] The decision section 666 is a circuit or instruction of the processor 662 configured to determine a priority level. In at least some embodiments, the decision section 666 is configured to determine a priority level associated with each of the first and second download requests based on the data type. In at least some embodiments, the decision section 666 is further configured to determine a priority level based on the vehicle status. In at least some embodiments, the decision section 666 is further configured to determine a priority level based on a specified priority level. In at least some embodiments, the decision section 666 is configured to ignore a specified priority level if that specified priority level is higher than a threshold priority level. In at least some embodiments, the decision section 666 utilizes information in the storage unit 670, such as the download request 672, the priority level 674, and the sensor data 676. In at least some embodiments, the decision section 666 includes subsections that perform additional functions as shown in the flowchart above. In at least some embodiments, such subsections are referred to by names associated with the corresponding functions.

[0051] The execution section 668 is a circuit or instruction of the processor 662 configured to perform the download of a download request. In at least some embodiments, the execution section 668 is configured to sequentially perform the download of a first download request and a second download request based on their associated priority levels. In at least some embodiments, the execution section 668 is configured to perform the download of a first download request before receiving a second download request. In at least some embodiments, the execution section 668 is configured to abort the execution of the download of a first download request in response to receiving a second download request, and to resume the execution of the download of a first download request in response to completing the execution of the second download request. In at least some embodiments, the execution section 668 is configured to abandon the download of any download request associated with a priority level below a predetermined priority level in response to the remaining capacity being below a threshold capacity. In at least some embodiments, the execution section 668 is configured to abandon the download of any download request associated with a priority level below a predetermined priority level in response to the vehicle determining that it is in power-saving mode. In at least some embodiments, the execution section 668 utilizes information in the storage unit 670, such as download requests 672 and priority levels 674. In at least some embodiments, the execution section 668 includes subsections that perform additional functions as shown in the flowchart above. In at least some embodiments, such subsections are referred to by names associated with their corresponding functions.

[0052] In at least some embodiments, the apparatus is another device capable of processing logical functions to perform the operations described herein. In at least some embodiments, the processor and the storage unit do not need to be entirely separate devices, and in some embodiments they share circuitry or one or more computer-readable media. In at least some embodiments, the storage unit includes a hard drive that stores both computer-executable instructions and data accessed by the processor, and the processor includes a combination of a central processing unit (CPU) and RAM, where the computer-executable instructions are copyable in whole or in part so as to be executed by the CPU during the performance of the operations described herein.

[0053] In at least some embodiments where the device is a computer, a program installed on the computer can cause the computer to function as or perform an operation associated with the device of the embodiments described herein. In at least some embodiments, such a program can be implemented by a processor to cause the computer to perform a specific operation associated with some or all of the blocks of the flowcharts and block diagrams described herein.

[0054] In at least some embodiments, the descriptions are based on flowcharts and block diagrams, where each block represents (1) a step in a process in which an operation is performed, or (2) a section of a processor responsible for performing the operation. In at least some embodiments, specific steps and sections are implemented by dedicated circuits, programmable circuits supplied with computer-readable instructions stored on a computer-readable medium, and / or a processor supplied with computer-readable instructions stored on a computer-readable medium. In at least some embodiments, the dedicated circuits include digital and / or analog hardware circuits, including integrated circuits (ICs) and / or discrete circuits. In at least some embodiments, the programmable circuits include reconfigurable hardware circuits, such as field-programmable gate arrays (FPGAs) and programmable logic arrays (PLAs), which include logical AND, OR, XOR, NAND, NOR, and other logical operations, flip-flops, registers, memory elements, etc.

[0055] In at least some embodiments, a computer-readable storage medium includes a tangible device capable of holding and storing instructions used by an instruction-executing device. In some embodiments, the computer-readable storage medium includes, but is not limited to, electronic storage devices, magnetic storage devices, optical storage devices, electromagnetic storage devices, semiconductor storage devices, or any preferred combination thereof. A non-exhaustive list of more specific examples of computer-readable storage mediums includes, namely, portable computer diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static random access memory (SRAM), portable compact disk read-only memory (CD-ROM), digital versatile disk (DVD), memory stick, floppy disk, mechanically encoded devices such as punch cards or grooved raised structures on which instructions are recorded, and any preferred combination thereof. When used herein, computer-readable storage media should not be construed as transient signals themselves, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmitting media (e.g., light pulses passing through optical fiber cables), or electrical signals transmitted through wires.

[0056] In at least some embodiments, the computer-readable program instructions described herein are downloadable from a computer-readable storage medium to each computing device / processing device, or downloadable via a network, such as the Internet, a local area network, a wide area network, and / or a wireless network, to an external computer or external storage device. In at least some embodiments, the network includes copper transmission cables, optical transmission fibers, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. In at least some embodiments, a network adapter card or network interface within each computing device / processing device receives computer-readable program instructions from the network and transfers the computer-readable program instructions for storage in a computer-readable storage medium within each computing device / processing device.

[0057] In at least some embodiments, the computer-readable program instructions performing the operations described above are any of the following: assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code, the source code or object code being written in any combination of one or more programming languages, including object-oriented programming languages ​​such as Smalltalk, C++, or similar, and conventional procedural programming languages ​​such as the C programming language or similar. In at least some embodiments, the computer-readable program instructions are implemented entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or fully on a remote computer or server. In at least some embodiments, in the latter scenario, the remote computer is connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or a connection to an external computer is made (for example, via the Internet using an Internet service provider). In at least some embodiments, an electronic circuit including, for example, a programmable logic circuit, a field-programmable gate array (FPGA), or a programmable logic array (PLA) implements computer-readable program instructions by using state information of computer-readable program instructions to personalize the electronic circuit in order to perform the aspects of the disclosure of the subject matter.

[0058] While embodiments of the subject matter disclosure are described, the technical scope of any claimed subject matter is not limited to the embodiments described above. Those skilled in the art will understand that various modifications and improvements are possible to the embodiments described above. They will also understand from the claims that embodiments added by such modifications or improvements are included within the technical scope of the invention.

[0059] Unless the order is indicated by “before,” “prior,” or similar terms, and unless the output from a previous process is used in a later process, the operations, procedures, steps, and stages of each process performed by the apparatus, system, program, and method shown in the claims, embodiments, or figures can be performed in any order. Even if the process flow is described in the claims, embodiments, or figures using phrases such as “first” or “next,” such description does not necessarily mean that the processes must be performed in the order described.

[0060] In at least some embodiments, priority-based data download is performed by receiving a first download request by a mobile computing network in the vehicle, receiving a second download request by the mobile computing network, determining a priority level associated with each of the first and second download requests based on the data type, and sequentially downloading the first and second download requests based on the associated priority levels.

[0061] The foregoing outlines some features of embodiments so that those skilled in the art may better understand aspects of this disclosure. Those skilled in the art should understand that this disclosure is readily available as a basis for designing or modifying other processes and structures to perform the same purposes and / or achieve the same advantages as embodiments incorporated herein. Those skilled in the art should also understand that such equivalent structures do not depart from the spirit and scope of this disclosure, and that various changes, substitutions, and modifications of this specification are possible without departing from the spirit and scope of this disclosure.

Claims

1. A method executed by a processor, Receiving a first download request via a mobile computing network in a vehicle, The mobile computing network receives a second download request, Based on the data type, the priority level associated with each of the first and second download requests is determined, Based on the associated priority level, the downloads of the first download request and the second download request are performed sequentially. Methods that include...

2. The process further includes performing the download of the first download request before receiving the second download request, The execution of the aforementioned sequential downloads is Upon receiving the second download request, the execution of the download for the first download request is stopped, Upon completion of the execution of the second download request, the execution of the download of the first download request is resumed. The method according to claim 1, including the method described in claim 1.

3. The method according to claim 1 or 2, wherein the determination of the priority level is further based on the vehicle condition.

4. The method according to claim 3, wherein the vehicle state is either operating or stopped.

5. At least one of the first download request and the second download request includes a specified priority level. The method according to claim 1 or 2, wherein the determination of the priority level is further based on the designated priority level.

6. The method of claim 5, wherein the determination of the priority level includes ignoring the designated priority level if the designated priority level is higher than a threshold priority level.

7. Further includes detecting the remaining capacity of the vehicle's battery, The method according to claim 1 or 2, wherein the execution of the sequential downloads includes abandoning the download of any download request associated with a priority level below a predetermined priority level, depending on whether the remaining capacity is less than a threshold capacity.

8. The method according to claim 1 or 2, wherein the execution of the sequential downloads includes abandoning the download of any download request associated with a priority level below a predetermined priority level, depending on whether the vehicle has determined that it is in power-saving mode.

9. The mobile computing network in the vehicle receives the first download request. The mobile computing network receives a second download request. Based on the data type, the priority level associated with each of the first and second download requests is determined. A device comprising a processor including a circuit configured to sequentially perform downloads of the first download request and the second download request based on the associated priority level.

10. The processor is further configured to perform the download of the first download request before the processor receives the second download request. The processor sequentially performs the download, Upon receiving the second download request, the execution of the download for the first download request is stopped, Upon completion of the execution of the second download request, the execution of the download of the first download request is resumed. The device according to claim 9, including the device described in claim 9.

11. The device according to claim 9 or 10, wherein the processor further determines the priority level based on the vehicle status.

12. The device according to claim 11, wherein the vehicle state is either operated or stopped.

13. At least one of the first download request and the second download request includes a specified priority level. The device according to claim 9 or 10, wherein the processor further determines the priority level based on the specified priority level.

14. The device according to claim 13, wherein the processor determining the priority level is further configured to ignore the designated priority level if the designated priority level is higher than a threshold priority level.

15. The processor is further configured to detect the remaining capacity of the vehicle's battery, The device according to claim 9 or 10, wherein the processor sequentially performs the downloads, and the processor is further configured to abandon the downloads of any download requests associated with a priority level below a predetermined priority level, depending on whether the remaining capacity is less than a threshold capacity.

16. Receiving a first download request via a mobile computing network in a vehicle, The mobile computing network receives a second download request, Based on the data type, the priority level associated with each of the first and second download requests is determined, Based on the associated priority level, the downloads of the first download request and the second download request are performed sequentially. A computer program that causes one or more processors to perform an action that includes [a specific action].

17. The operation further includes performing the download of the first download request before receiving the second download request, The execution of the aforementioned sequential downloads is Upon receiving the second download request, the execution of the download for the first download request is stopped, Upon completion of the execution of the second download request, the execution of the download of the first download request is resumed. The computer program according to claim 16, including the computer program described in claim 16.

18. The computer program according to claim 16 or 17, wherein the determination of the priority level is further based on the vehicle state.

19. The computer program according to claim 18, wherein the vehicle state is either operating or stopped.

20. At least one of the first download request and the second download request includes a specified priority level. The computer program according to claim 16 or 17, wherein the determination of the priority level is further based on the designated priority level.