Unification of access to vehicle property data and HMI application specific data
The system allows HMI applications to read and write application-specific data within vehicle systems by extending the property manager's API functionality, improving data integration and management efficiency.
Patent Information
- Application Number
- JP2025026022
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-01
- Filing Date
- 2025-02-20
- Publication Date
- 2025-11-14
- Estimated Expiration
- 2045-02-20
AI Technical Summary
Existing vehicle systems limit Human-Machine Interface (HMI) applications to accessing only predetermined property data through a single API, preventing them from reading and writing application-specific data efficiently.
The system extends the functionality of the property manager to allow HMI applications to read and write application-specific data using the same API as property data, by storing such data in separate file paths and utilizing a unified access control system.
Enables seamless integration and management of both property and application-specific data within vehicle systems, enhancing the functionality of HMI applications without requiring separate API commands.
Smart Images

Figure 2025169881000001_ABST
Abstract
Description
[Background technology]
[0001] The property data includes predetermined metrics or parameters that change dynamically during operation depending on user settings or vehicle conditions, such as vehicle speed, fuel level, engine RPM, number of connected devices, etc. The property data is collected by the property manager by communicating with various sensors using various application programming interfaces (APIs), converted by the property manager into a common format, and stored in a predetermined directory. [Brief explanation of the drawings]
[0002] Aspects of the present disclosure are best understood from the following detailed description when read in conjunction with the accompanying figures. It should be noted that, according to standard industry practice, various features have not been drawn to scale. In fact, the dimensions of various features may be arbitrarily increased or decreased for clarity of illustration.
[0003] [Figure 1] FIG. 1 is a schematic diagram of a system for integrating access to vehicle property data and HMI application specific data, according to at least some embodiments of the subject disclosure. [Figure 2] FIG. 2 is an operational flow for integrating access to vehicle property data and HMI application specific data according to at least some embodiments of the subject disclosure. [Figure 3] FIG. 3 is an operational flow for property data acquisition according to at least some embodiments of the subject disclosure. [Figure 4] FIG. 4 is an operational flow for data recording according to at least some embodiments of the subject disclosure. [Figure 5] FIG. 5 is a block diagram of a hardware configuration for integrating access to vehicle property data and HMI application specific data, according to at least some embodiments of the subject disclosure. DETAILED DESCRIPTION OF THE INVENTION
[0004] The following disclosure provides numerous different embodiments or examples for implementing different features of the provided subject matter. To simplify the disclosure, specific examples of components, values, operations, materials, arrangements, or the like are set forth below. Of course, these are merely examples and are not intended to be limiting. Other components, values, operations, materials, arrangements, or the like are contemplated. In addition, the disclosure may repeat reference numerals and / or characters in various examples. This repetition is for the purposes of simplicity and clarity and does not, in itself, dictate a relationship between the various embodiments and / or configurations described.
[0005] In vehicle systems known to the inventor, a property manager makes property data available on request through a single API. Human-machine interface (HMI) applications, including third-party applications, have access to read and write property data through the property manager's API. However, at least some HMI applications benefit from the ability to store data other than predetermined property data, such as account data, user information, etc.
[0006] In at least some embodiments described herein, the functionality of the property manager is extended to allow HMI applications to read and write application-specific data in the same manner as property data. In at least some embodiments, the property manager responds to API commands for data other than property data, allowing HMI applications to read and write property data and application-specific data in the same manner.
[0007] In at least some embodiments, a system in a vehicle writes application-specific data to a different file path than the property data, allowing an HMI application to read and write application-specific data through the same API used to read and write property data, e.g., vehicle speed, remaining fuel, engine RPM, etc. In this way, at least some embodiments herein allow an HMI application to write and read data other than property data without requiring a separate API command set.
[0008] 1 is a schematic diagram of a system for integrating access to vehicle property data and HMI application specific data, according to at least some embodiments of the subject disclosure. The system includes a head unit 100, a speedometer sensor 111, a fuel level sensor 112, a speedometer API 113, a fuel level API 114, a property manager API 115, a navigation application 116, a file system 117, and an access control system 118.
[0009] The head unit 100 communicates with a speedometer API 113, a fuel level API 114, and a navigation application 116, and includes a property manager API 115, a file system 117, and an access control system 118. In at least some embodiments, the head unit 100 is configured to function as a central processing unit for the vehicle's HMI applications. In at least some embodiments, the head unit 100 is configured to facilitate the exchange of data between the various APIs and HMI applications. In at least some embodiments, the head unit 100 is configured to interact with the various APIs and HMI applications similar to the way a computer's CPU interacts with software. In at least some embodiments, the head unit 100 is an infotainment system in a vehicle, e.g., an automobile. In at least some embodiments, the head unit 100 includes a touchscreen interface. In at least some embodiments, the head unit 100 is configured to provide an interface for the driver and passengers to interact with the vehicle's systems. In at least some embodiments, the head unit 100 is configured to provide navigation, media playback, and vehicle settings through the HMI applications. In at least some embodiments, the head unit 100 is configured for data management and security.
[0010] The speedometer sensor 111 communicates with the speedometer API 113. In at least some embodiments, the speedometer sensor 111 communicates with the wheels or transmission of the vehicle. In at least some embodiments, the speedometer sensor 111 includes components similar to speed sensors found in most vehicles. In at least some embodiments, the speedometer sensor 111 is configured to measure the speed of the vehicle. In at least some embodiments, the speedometer sensor 111 is configured to make real-time speed data available for acquisition or processing. In at least some embodiments, the speedometer sensor 111 is configured to interact with the speedometer API 113. In at least some embodiments, the speedometer sensor 111 includes mechanical and / or electronic components for measuring the rotational speed of the wheels or transmission of the vehicle. In at least some embodiments, data from the speedometer sensor 111 is used to display the speed of the vehicle on a dashboard. In at least some embodiments, data from the speedometer sensor 111 is utilized by a cruise control system. In at least some embodiments, the speedometer sensor 111 is configured to interact with a speedometer API 113 to make speed data available for retrieval to be processed and utilized by various HMI applications.
[0011] The fuel level sensor 112 is in communication with the fuel level API 114. In at least some embodiments, the fuel level sensor 112 is configured to measure the fuel level. In at least some embodiments, the fuel level sensor 112 is configured to measure the remaining fuel in the vehicle. In at least some embodiments, the fuel level sensor 112 is further configured to provide data regarding the fuel status of the vehicle. In at least some embodiments, the fuel level sensor 112 is in communication with the fuel level API 114. In at least some embodiments, the fuel level sensor 112 is similar to a fuel gauge transmitter in the vehicle's fuel tank. In at least some embodiments, the fuel level sensor 112 includes mechanical and / or electronic components for measuring the fuel level. In at least some embodiments, the fuel level sensor 112 generates data that can be used to warn the driver in response to the vehicle being low on fuel. In at least some embodiments, the fuel level sensor 112 communicates the data to the fuel level API 114.
[0012] The speedometer API 113 communicates with the speedometer sensor 111 and the head unit 100. In at least some embodiments, the speedometer API 113 is configured to obtain vehicle speed data from the speedometer sensor 111. In at least some embodiments, the speedometer API 113 is configured to communicate this data to the head unit 100. In at least some embodiments, the speedometer API 113 is similar to a software interface found in a vehicle's electronic control unit (ECU). In at least some embodiments, data from the speedometer API 113 is processed in the head unit 100 and then utilized by an HMI application. In at least some embodiments, data from the speedometer API 113 is used by the navigation application 116 to calculate an estimated time of arrival (ETA). In at least some embodiments, the speedometer API 113 is used by a driver assistance system to maintain a set speed.
[0013] The fuel level API 114 communicates with the fuel level sensor 112 and the head unit 100. In at least some embodiments, the fuel level API 114 is configured to obtain remaining fuel data from the fuel level sensor 112. In at least some embodiments, the fuel level API 114 is configured to communicate this data to the head unit 100 for processing and retrieval by an HMI application. In at least some embodiments, the fuel level API 114 is configured to communicate with the fuel level sensor 112 to obtain fuel data. In at least some embodiments, the fuel level API 114 is configured to transmit this data to the head unit 100 upon request. In at least some embodiments, the fuel level API 114 is similar to a software interface found in a vehicle's ECU. In at least some embodiments, the fuel level API 114 is a software interface. In at least some embodiments, data from the fuel level API 114 can be used by a fuel saving application to provide insights into fuel consumption and efficiency.
[0014] The property manager API 115 communicates with the navigation application 116 and is included in the head unit 100. In at least some embodiments, the property manager API 115 is configured as a software interface. In at least some embodiments, the property manager API 115 is configured to enable an HMI application, such as the navigation application 116, to communicate with the head unit 100. In at least some embodiments, the property manager API 115 is configured to facilitate the exchange of data between the head unit and various HMI applications. In at least some embodiments, the property manager API 115 enables different vehicle components and systems to interact. In at least some embodiments, the property manager API 115 is configured to enable interaction similar to how APIs function within computer systems. In at least some embodiments, the property manager API 115 is configured to support representative state transition (REST) commands.
[0015] The navigation application 116 communicates with the head unit 100. In at least some embodiments, the navigation application 116 is configured to use vehicle property data to provide navigation information to a driver or the like. In at least some embodiments, the navigation application 116 is configured to provide navigation instructions based on the vehicle data. In at least some embodiments, the navigation application 116 receives vehicle data from the head unit 100. In at least some embodiments, the navigation application 116 is a GPS navigation application for the vehicle. In at least some embodiments, the navigation application 116 is an HMI application. In at least some embodiments, the navigation application 116 is configured to provide real-time navigation assistance to the driver. In at least some embodiments, the navigation application 116 provides turn-by-turn directions. In at least some embodiments, the navigation application 116 provides traffic updates. In at least some embodiments, the navigation application 116 provides points of interest.
[0016] File system 117 communicates with property manager API 115. In at least some embodiments, file system 117 is configured to organize and store data. In at least some embodiments, file system 117 is configured to store data in various file paths. In at least some embodiments, file system 117 is configured to store property data in one file path and application-specific data in one or more other file paths. In at least some embodiments, file system 117 interacts with HMI applications and other components through property manager API 115. In at least some embodiments, file system 117 is similar to file systems found in computer operating systems. In at least some embodiments, file system 117 utilizes memory or other forms of physical electronic storage. In at least some embodiments, file system 117 is configured to store user preferences. In at least some embodiments, file system 117 is configured to store navigation data. In at least some embodiments, file system 117 is configured to store media files.
[0017] Access control system 118 is included in file system 117. In at least some embodiments, access control system 118 is configured to manage access to predetermined file paths in file system 117. In at least some embodiments, access control system 118 is configured to facilitate secure storage and access of data. In at least some embodiments, access control system 118 interacts with file system 117. In at least some embodiments, access control system 118 is similar to access control mechanisms found in computer operating systems. In at least some embodiments, access control system 118 is configured to enable protection of sensitive data, such as vehicle speed, fuel level, user credentials, personal information, etc. In at least some embodiments, access control system 118 is configured to prevent unauthorized access to sensitive data.
[0018] In at least some embodiments, the system for integrating access to vehicle property data and HMI application-specific data includes sensors and sensor APIs other than or in addition to those related to speed and fuel level, e.g., for engine RPM, number of connected devices, lighting, etc. In at least some embodiments, the first sensor is one of a speedometer, a fuel sensor, or a tachometer. In at least some embodiments, the system for integrating access to vehicle property data and HMI application-specific data includes sensors and sensor APIs other than or in addition to those related to navigation, e.g., for HMI applications, e.g., media presentation, personal communications, interactive entertainment, emergency notifications, etc. In at least some embodiments, the HMI application is one of a navigation application, a media application, or a user communications application. In at least some embodiments, the property manager API is included in a component other than the head unit, e.g., a central unit or any other ECU or computing device in the vehicle.
[0019] 2 is an operational flow for integrating access to vehicle property data and HMI application-specific data, according to at least some embodiments of the subject disclosure. In at least some embodiments, the operational flow provides a method for integrating access to vehicle property data and HMI application-specific data, according to at least some embodiments of the subject disclosure. In at least some embodiments, the method is performed by a controller of a head unit, for example, controller 502 of head unit 500 of FIG. 5 described herein below.
[0020] At S230, the controller or a section thereof receives a read request. In at least some embodiments, the controller receives a request to read data from an HMI application. In at least some embodiments, the request is received through a property manager API. In at least some embodiments, the property manager API of the controller receives the read request. In at least some embodiments, the property manager API listens for incoming requests. In at least some embodiments, the read request is for property data or application-specific data. In at least some embodiments, the HMI application sends the read request in response to performing an operation that utilizes vehicle data. In at least some embodiments, the controller parses the read request upon receipt.
[0021] At S232, the controller or a section thereof determines whether the request is for property data. In at least some embodiments, the controller determines whether the request is for property data. In at least some embodiments, the controller determines whether the request is for property data. In at least some embodiments, the controller determines based on the file path of the request. In at least some embodiments, the controller inspects the parsed request. In at least some embodiments, the controller determines whether the request is for property data or other data, such as application-specific data. In response to a request that is for property data, operational flow proceeds to sending the property data at S234. In response to a request that is not for property data, operational flow proceeds to sending the application-specific data at S236.
[0022] At S234, the controller or a section thereof transmits the property data. In at least some embodiments, the controller transmits a requested value from the plurality of values stored in the first file path in response to determining that the request is for property data. In at least some embodiments, a property manager API of the controller transmits the property data. In at least some embodiments, the controller retrieves the requested value from a file path dedicated to property data. In at least some embodiments, the controller transmits the requested value to the requesting HMI application. In at least some embodiments, the controller provides the HMI application with historical data corresponding to the requested data. In at least some embodiments, the controller transmits the requested value in response to determining that the request is for property data. In at least some embodiments, the controller performs the operational flow of FIG. 3, described herein below.
[0023] At S236, the controller or a section thereof transmits the application-specific data. In at least some embodiments, in response to determining that the request is not for property data, the controller transmits the requested data from the application-specific data stored in the second file path. In at least some embodiments, the application-specific data is one of account data or user information. In at least some embodiments, a property manager API of the controller transmits the application-specific data. In at least some embodiments, the controller obtains the requested value from a file path other than the file path dedicated to property data. In at least some embodiments, the controller transmits the requested value to the requesting HMI application. In at least some embodiments, the controller transmits the requested value in response to determining that the request is for data other than property data, i.e., application-specific data. In at least some embodiments, the property manager API of the controller transmits the requested data to the HMI application. In at least some embodiments, the controller provides historical data corresponding to the requested data to the HMI application. In at least some embodiments, the controller performs the operational flow of FIG. 3, described herein below.
[0024] 3 is an operational flow for property data acquisition, in accordance with at least some embodiments of the subject disclosure. In at least some embodiments, the operational flow provides a method for property data acquisition, in accordance with at least some embodiments of the subject disclosure. In at least some embodiments, the operational flow is performed in response to a request from an HMI application. In at least some embodiments, the method is performed by a controller of a head unit, for example, controller 502 of head unit 500 of FIG. 5 described herein below.
[0025] At S340, the controller or a section thereof retrieves a value. In at least some embodiments, the controller retrieves a first value through a first vehicle API. In at least some embodiments, the controller retrieves a second value through a second vehicle API. In at least some embodiments, the controller retrieves a value through a vehicle sensor API. In at least some embodiments, the controller initiates a request for a sensor value via the vehicle sensor API. In at least some embodiments, the controller retrieves a value in response to a change in vehicle state. In at least some embodiments, the first value is retrieved in response to a change notification received through the first vehicle API. In at least some embodiments, the first value is retrieved in response to a request to read data. In at least some embodiments, the first value is retrieved from a first vehicle sensor and the second value is retrieved from a second vehicle sensor. In at least some embodiments, the vehicle sensor API processes the request. In at least some embodiments, the vehicle sensor API returns the requested value. In at least some embodiments, the controller retrieves a data value monitored by the vehicle or its sensors. In at least some embodiments, the first value is one of vehicle speed, amount of fuel, engine RPM, or number of connected devices. In at least some embodiments, the controller obtains the value to provide real-time, accurate data to a requesting HMI application.
[0026] At S342, the controller, or a section thereof, converts the acquired value to a common format. In at least some embodiments, the controller converts at least one of the first value or the second value from a proprietary format to a common format. In at least some embodiments, the controller converts the acquired value from a proprietary format to a common format. In at least some embodiments, different vehicle sensors use different data formats. In at least some embodiments, the controller converts the acquired value so that the HMI application can interpret and use the value. In at least some embodiments, the controller parses the proprietary data format of the value. In at least some embodiments, the controller maps proprietary data elements of the value to corresponding elements in the common format. In at least some embodiments, the controller encodes the value into the common format.
[0027] At S344, the controller or a section thereof records the converted value. In at least some embodiments, the controller records the first value and the second value among the plurality of values in a first file path. In at least some embodiments, the controller records the converted value in a file path dedicated to property data. In at least some embodiments, the controller records the converted value in the vehicle's onboard storage system. In at least some embodiments, the controller records the converted value in a file path indicated in the request from the HMI application. In at least some embodiments, the controller overwrites a previously recorded value. In at least some embodiments, the controller maintains a previously recorded value. In at least some embodiments, the controller records data in response to successfully converting the value. In at least some embodiments, the controller records the converted value in a file path protected with higher access restrictions. In at least some embodiments, the controller performs the operational flow of FIG. 4, described herein below.
[0028] 4 is an operational flow for data recording, in accordance with at least some embodiments of the subject disclosure. In at least some embodiments, the operational flow provides a method of data recording, in accordance with at least some embodiments of the subject disclosure. In at least some embodiments, the method is performed by a controller of a head unit, for example, controller 502 of head unit 500 of FIG. 5 described herein below.
[0029] At S450, the controller or a section thereof receives a request to write data. In at least some embodiments, the controller receives the request to write data from an HMI application. In at least some embodiments, the controller receives the request to write data in application specific data from an HMI application. In at least some embodiments, the controller listens for incoming requests from the HMI application through a property manager API. In at least some embodiments, the controller receives a request that includes the data to be written. In at least some embodiments, the controller receives a request that includes metadata, such as a desired file path, data format, authentication information, etc.
[0030] At S452, the controller or a section thereof determines whether the request is for property data. In at least some embodiments, the controller or a section thereof determines whether the request is for property data or for application-specific data. In at least some embodiments, the controller makes the determination based on, for example, a file path identifier in metadata included in the request. In at least some embodiments, the request includes a file path identifier, and the controller makes the determination based on the file path identifier. In at least some embodiments, a first file path has higher access restrictions than a second file path. In at least some embodiments, the request is for property data if the file path identifier corresponds to the first file path. In at least some embodiments, the controller determines that the request is for application-specific data in response to a file path identifier corresponding to a file path other than a file path dedicated to property data. In response to determining that the request is for property data, the operational flow proceeds to an authority determination at S454. In response to determining that the request is not for property data, the operational flow proceeds to recording application-specific data at S458.
[0031] At S454, the controller determines whether the request is authorized. In at least some embodiments, the controller determines whether the request includes authorization to record property data. In at least some embodiments, the controller determines whether the request is from an authorized HMI application. In at least some embodiments, the controller checks the credentials of the HMI application. In at least some embodiments, the controller checks the credentials against an access control list or similar security mechanism. In at least some embodiments, the controller allows only trusted applications to modify the vehicle's property data. In response to determining that the request is authorized, the operational flow proceeds to recording the property data at S456. In response to determining that the request is not authorized, the operational flow ends.
[0032] At S456, the controller or a section thereof records the property data. In at least some embodiments, the controller records the property data in a file path dedicated to property data. In at least some embodiments, the controller writes the property data to a file system of the vehicle. In at least some embodiments, the controller updates a system parameter or setting associated with the property data. In at least some embodiments, the controller records the property data in response to determining that the value is within a predetermined range.
[0033] At S458, the controller or a section thereof records the application-specific data. In at least some embodiments, the controller records the data in the application-specific data to a second file path in response to the request to write the data in the application-specific data. In at least some embodiments, the controller records the application-specific data to a file path other than a file path dedicated to property data. In at least some embodiments, the controller records the application-specific data to an application-specific file path. In at least some embodiments, the controller writes the application-specific data to a vehicle file system. In at least some embodiments, the controller records the application-specific data so that an HMI application can retrieve the application-specific data from persistent storage. In at least some embodiments, the application-specific data is recorded to maintain user preferences, track usage statistics, or reduce the need to enter user credentials.
[0034] In at least some embodiments, the operational flow for data recording occurs in response to a condition other than a write request from the HMI application, such as a status update, a value request from the HMI application, etc. In at least some embodiments, the controller sends an error message in response to determining that the request is unauthorized. In at least some embodiments, the controller changes the file path identifier of the file path dedicated to the property data periodically or in response to an event as a security precaution. In at least some embodiments, the controller changes the file path identifier of the first file path in response to a vehicle state. In at least some embodiments, the vehicle state is one of high speed, autonomous driving, or an emergency situation.
[0035] FIG. 5 is a block diagram of a hardware configuration for integrating access to vehicle property data and HMI application specific data, according to at least some embodiments of the subject disclosure.
[0036] A preferred hardware configuration includes a head unit 500 that interacts with input devices 507, either directly or through a network 509, and through the network 509, with a sensor API 514 and an HMI application 516. In at least some embodiments, the input devices 507 are touchscreens, microphones, cameras, or any other devices configured to detect tactile, auditory, visual, or other input. In at least some embodiments, the network 509 is an Ethernet network, a controller area network (CAN), or any other wired or wireless network, or a combination thereof. In at least some embodiments, the head unit 500 is a computer or other computing device that receives input or commands from the input devices 507. In at least some embodiments, the head unit 500 is integrated into the input devices 507. In at least some embodiments, the head unit 500 is a computer system that executes computer-readable instructions to perform operations related to integrating access to vehicle property data and HMI application-specific data.
[0037] The head unit 500 includes a controller 502, storage 504, an input / output interface 506, and a communication interface 508. In at least some embodiments, the controller 502 includes a processor or programmable circuit that executes instructions to cause the processor or programmable circuit to perform operations in accordance with the instructions. In at least some embodiments, the controller 502 includes analog or digital programmable circuitry, or any combination thereof. In at least some embodiments, the controller 502 includes physically separate storage or circuitry that communicates through communications. In at least some embodiments, the storage 504 includes a non-volatile computer-readable medium capable of storing executable and non-executable data accessed by the controller 502 during execution of instructions. In at least some embodiments, the communication interface 508 sends and receives data from a network 509. In at least some embodiments, the input / output interface 506 connects to various input and output units, such as input devices 507 via parallel ports, serial ports, keyboard ports, mouse ports, monitor ports, and the like, to accept commands and present information. In some embodiments, the storage 504 is external to the head unit 500 .
[0038] The controller 502 includes a sending section 560, an acquiring section 562, a converting section 564, and a recording section 566. The storage 504 includes an API parameter 570, a file path identifier 572, and an authorization parameter 574.
[0039] The sending section 560 is circuitry or instructions of the controller 502 configured to send data. In at least some embodiments, the sending section 560 is configured to send a requested value from among a plurality of values stored in a first file path in response to determining that the request is for property data, and to send the requested data from among the application-specific data stored in a second file path in response to determining that the request is not for property data. In at least some embodiments, the sending section 560 utilizes information in the storage 504, such as the file path identifier 572. In at least some embodiments, the sending section 560 includes subsections for performing additional functions as described in the flowcharts above. In at least some embodiments, such subsections are referenced by names associated with the corresponding functions.
[0040] Acquisition section 562 is circuitry or instructions in controller 502 configured to acquire data. In at least some embodiments, acquisition section 562 is configured to acquire a first value through a first vehicle API and to acquire a second value through a second vehicle API. In at least some embodiments, acquisition section 562 records information in storage 504, such as API parameters 570. In at least some embodiments, acquisition section 562 includes subsections for performing additional functions as described in the flowcharts above. In at least some embodiments, such subsections are referenced by names associated with the corresponding functions.
[0041] Conversion section 564 is circuitry or instructions in controller 502 configured to convert data to a common format. In at least some embodiments, conversion section 564 is configured to convert at least one of the first value or the second value from a proprietary format to a common format. In at least some embodiments, acquisition section 562 utilizes information in storage 504, such as file path identifier 572. In at least some embodiments, conversion section 564 includes subsections for performing additional functions as described in the flowcharts above. In at least some embodiments, such subsections are referenced by names associated with the corresponding functions.
[0042] Recording section 566 is circuitry or instructions of controller 502 configured to record data. In at least some embodiments, recording section 566 is configured to record a first value and a second value among a plurality of values to a first file path. In at least some embodiments, recording section 566 utilizes information in storage 504, such as authorization parameter 574. In at least some embodiments, recording section 566 includes subsections for performing additional functions as described in the flowcharts above. In at least some embodiments, such subsections are referenced by names associated with the corresponding functions.
[0043] In at least some embodiments, the apparatus is a separate device capable of processing logical functions to perform the operations herein. In at least some embodiments, the controller and storage unit need not be entirely separate devices, and in some embodiments, 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 controller, and the controller includes a central processing unit (CPU) and RAM combination, where the computer-executable instructions are copyable in whole or in part for execution by the CPU during performance of the operations herein.
[0044] In at least some embodiments where the device is a computer, programs installed on the computer can cause the computer to function as or perform operations associated with the device embodiments described herein, and in at least some embodiments, such programs are executable by a processor to cause the computer to perform specific operations associated with some or all of the blocks in the flowcharts and block diagrams described herein.
[0045] At least some embodiments are described with reference to flowcharts and block diagrams, where the blocks represent (1) steps in a process in which an operation is performed or (2) sections of a controller responsible for performing an operation. In at least some embodiments, particular steps and sections are implemented by dedicated circuitry, programmable circuitry provided with computer-readable instructions stored on a computer-readable medium, and / or a processor provided with computer-readable instructions stored on a computer-readable medium. In at least some embodiments, dedicated circuitry includes digital and / or analog hardware circuitry, including integrated circuits (ICs) and / or discrete circuits. In at least some embodiments, programmable circuitry includes reconfigurable hardware circuitry, e.g., field programmable gate arrays (FPGAs), programmable logic arrays (PLAs), etc., comprising logical AND, OR, XOR, NAND, NOR, and other logic operations, flip-flops, registers, memory elements, etc.
[0046] In at least some embodiments, a computer-readable storage medium comprises a tangible device capable of holding and storing instructions for use by an instruction execution device. In some embodiments, a computer-readable storage medium includes, for example, but is not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination thereof. A non-exhaustive list of more specific examples of computer-readable storage media includes the following: a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), a static random access memory (SRAM), a portable compact disk read-only memory (CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk, a mechanically encoded device such as a punch card or a ridge-in-a-groove structure having instructions recorded thereon, and any suitable combination thereof. Computer-readable media as used herein should not be construed as transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through a waveguide or other transmission medium (e.g., light pulses passing through a fiber optic cable), or electrical signals transmitted over wires.
[0047] In at least some embodiments, the computer-readable program instructions described herein can be downloaded to each computing / processing device from a computer-readable storage medium or can be downloaded to an external computer or external storage device over a network, such as the Internet, a local area network, a wide area network, and / or a wireless network. In at least some embodiments, the network includes copper transmission cables, optical fiber transmissions, wireless transmissions, routers, firewalls, switches, gateway computers, and / or edge servers. In at least some embodiments, a network adapter card or network interface in each computing / processing device receives the computer-readable program instructions from the network and forwards the computer-readable program instructions for storage in a computer-readable storage medium in the respective computing / processing device.
[0048] In at least some embodiments, the computer-readable program instructions for performing the operations described above are either assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including object-oriented programming languages such as Smalltalk, C++, or the like, and traditional procedural programming languages such as the "C" programming language or similar programming languages. In at least some embodiments, the computer-readable program instructions execute 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 entirely 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 is connected to an external computer (e.g., over the Internet using an Internet Service Provider). In at least some embodiments, electronic circuitry including, for example, a programmable logic circuit, a field programmable gate array (FPGA), or a programmable logic array (PLA) executes computer-readable program instructions by utilizing state information in the computer-readable program instructions to individualize the electronic circuitry to perform aspects of the present invention.
[0049] Although embodiments of the present invention have been described, the scope of any claimed subject matter is not limited to the above-described embodiments. Those skilled in the art will understand that various modifications and improvements to the above-described embodiments are possible. Those skilled in the art will also understand from the claims that additional embodiments incorporating such modifications or improvements are within the scope of the present invention.
[0050] Unless an order is indicated by "before," "before," or the like, and unless 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 described in the claims, embodiments, or figures may be performed in any order. Even when a claim, embodiment, or figure describes a process flow using phrases such as "first" or "then," such description does not necessarily imply that the process must be performed in the order described.
[0051] In at least some embodiments, integrating access to vehicle property data and HMI application-specific data is performed by receiving a request to read data from the HMI application, determining whether the request is for property data, and, in response to determining that the request is for property data, transmitting the requested value from the plurality of values stored in a first file path, and, in response to determining that the request is not for property data, transmitting the requested data from the application-specific data stored in a second file path.
[0052] In at least some embodiments, integrating access to the vehicle property data and the HMI application-specific data further includes obtaining a first value through a first vehicle API, obtaining a second value through a second vehicle API, converting at least one of the first value or the second value from a proprietary format to a common format, and recording the first value and the second value among the plurality of values to a first file path. In at least some embodiments, integrating access to the vehicle property data and the HMI application-specific data further includes receiving a request from the HMI application to write data among the application-specific data. In at least some embodiments, integrating access to the vehicle property data and the HMI application-specific data further includes recording the data among the application-specific data to a second file path in response to the request to write the data among the application-specific data. In at least some embodiments, the request includes a file path identifier, and the determining is based on the file path identifier. In at least some embodiments, the first value is obtained in response to a change notification received through the first vehicle API. In at least some embodiments, the first value is obtained in response to a request to read data. In at least some embodiments, the request is received through a head unit API. In at least some embodiments, the first file path has higher access restrictions than the second file path. In at least some embodiments, integrating access to the vehicle property data and the HMI application specific data further includes modifying a file path identifier of the first file path depending on a vehicle state. In at least some embodiments, the vehicle state is one of speed, autonomous driving, or an emergency situation. In at least some embodiments, the first value is obtained from a first vehicle sensor and the second value is obtained from a second vehicle sensor. In at least some embodiments, the first sensor is one of a speedometer, a fuel sensor, or a tachometer. In at least some embodiments, the first value is one of vehicle speed, an amount of fuel, engine RPM, or a number of connected devices.In at least some embodiments, the HMI application is one of a navigation application, a media application, or a user communication application. In at least some embodiments, the application specific data is one of account data or user information.
[0053] In at least some embodiments, the integration of access to vehicle property data and HMI application-specific data is performed by a device having a processor that executes instructions in accordance with the above operations or a controller that includes circuitry configured to perform the above operations.
[0054] The foregoing outlines features of some embodiments so that those skilled in the art may more fully appreciate aspects of the present disclosure. Those skilled in the art should appreciate that this disclosure may readily be used as a basis for designing or modifying other processes and structures to carry out the same purposes and / or achieve the same advantages as the embodiments incorporated herein. Those skilled in the art should also appreciate that such equivalent structures do not depart from the spirit and scope of the present disclosure, and that various changes, substitutions, and alterations can be made therein without departing from the spirit and scope of the present disclosure.
Claims
1. 1. A computer program product for causing at least one processor to perform operations, said operations comprising: receiving a request to read data from a human machine interface (HMI) application; determining whether the request is for property data; In response to determining that the request is for property data, transmitting the requested value from the plurality of values stored in the first file path; In response to determining that the request is not for property data, transmitting the requested data in the application specific data stored in a second file path; a computer program comprising:
2. The operation is Obtaining a first value through a first vehicle API (Application Programming Interface); Obtaining a second value through a second vehicle API; converting at least one of the first value or the second value from a proprietary format to a common format; recording the first value and the second value among the plurality of values in a first file path; The computer program of claim 1 further comprising:
3. The operation is The computer program product of claim 2 , further comprising receiving a request from an HMI application to write data in the application specific data.
4. The operation is The computer program product of claim 3 , further comprising, in response to the request to write the data in the application-specific data, recording the data in the application-specific data to the second file path.
5. The computer program product of any one of claims 2 to 4, wherein the request includes a file path identifier, and the determination is based on the file path identifier.
6. The computer program product of claim 2 , wherein the first value is obtained in response to a change notification received through the first vehicle API.
7. The computer program product of any one of claims 2 to 4, wherein the first value is obtained in response to the request to read data.
8. The computer program product of any one of claims 1 to 3, wherein the request is received through a property manager API.
9. 4. The computer program product of claim 1, wherein the first file path has higher access restrictions than the second file path.
10. The operation is The computer program product of claim 1 , further comprising: changing a file path identifier of the first file path depending on a vehicle state.
11. The computer program product of claim 10 , wherein the vehicle state is one of speed, autonomous driving, or an emergency situation.
12. The computer program product of any one of claims 2 to 4, wherein the first value is obtained from a first vehicle sensor and the second value is obtained from a second vehicle sensor.
13. The computer program product of claim 12 , wherein the first vehicle sensor is one of a speedometer, a fuel sensor, or a tachometer.
14. The computer program product of any one of claims 2 to 4, wherein the first value is one of a vehicle speed, an amount of fuel, an engine RPM, or a number of connected devices.
15. 5. The computer program product of claim 3 or 4, wherein the HMI application is one of a navigation application, a media application, or a user communication application.
16. The computer program product of claim 1, wherein the application-specific data is one of account data or user information.
17. 1. A processor-implemented method comprising: receiving a request to read data from an HMI application; determining whether the request is for property data; In response to determining that the request is for property data, transmitting the requested value from the plurality of values stored in the first file path; In response to determining that the request is not for property data, transmitting the requested data in the application specific data stored in a second file path; A method comprising:
18. Obtaining a first value through a first vehicle API; Obtaining a second value through a second vehicle API; converting at least one of the first value or the second value from a proprietary format to a common format; recording the first value and the second value among a plurality of values to a first file path; 20. The method of claim 17, further comprising:
19. 19. The method of claim 17 or 18, further comprising receiving a request from an HMI application to write data in the application specific data.
20. 1. A device comprising a controller including circuitry configured to perform operations, the operations comprising: receiving a request to read data from an HMI application; determining whether the request is for property data; In response to determining that the request is for property data, transmitting the requested value from the plurality of values stored in the first file path; In response to determining that the request is not for property data, transmitting the requested data in the application specific data stored in a second file path; Including, the device.
Citation Information
Patent Citations
Model creation apparatus, model creation method, and program
JP2020042708A
Pc-based automobile owner's manual, diagnostics, and auto care
US20140200736A1
Instantiation of javascript object
US20180107501A1