IP Library › Granted Patent US 11,405,234
Granted Patent B2
US 11,405,234 · App. 16/764,153 · Granted Aug 2, 2022

Extensible mapping for vehicle system buses

Inventors: Tomasz Pawel Wasilczyk (San Jose, CA); Yevgeniy Ruvinovich Karshenboym (Belmont, CA); Steve Paik (Renton, WA); Scott Randolph (Aptos, CA)
Assignee: Google LLC
H04L12/40013G07C5/008H04L2012/40215H04L2012/40273
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,405,234
App. No.
16/764,153
Granted
Aug 2, 2022
Kind
B2
Abstract

In general, techniques are described for extensible mappings for vehicle system busses. A device configured to interact with a vehicle may perform the techniques. The device may comprise a memory that stores an extensible mapping between a local control message and a standard control message. The device may also include a processor configured to execute an operating system to control a system of the vehicle. The operating system may generate the standard control message, where the standard control message includes a first representation of a command set. The processor may translate, based on the extensible mapping, the standard control message to obtain the local control message, the local control message including a second representation of the command set. The processor may transmit, via a control bus coupled to the processor and the system, the local control message to initiate an operational state change of the system.

Claims (49)

1. A method comprising:

executing, by one or more processors of a vehicle head unit integrated into a vehicle, an operating system to control one or more systems of the vehicle, provide entertainment for occupants of the vehicle, information regarding the vehicle, and provide an execution environment in which one or more applications execute;

executing, by the one or more processors, a vehicle hardware abstraction layer to provide a software shim between a control bus, coupled to the one or more processors and the one or more systems, and the operating system;

obtaining, by the one or more processors, an extensible mapping between a local control message specified in accordance with a control bus protocol and a standard control message supported by the operating system;

generating, by the operating system executed by the one or more processors, the standard control message, the standard control message including a first representation of a command set to initiate an operational state change of the one or more systems;

translating, by the vehicle hardware abstraction layer and based on the extensible mapping, the standard control message to obtain the local control message, the local control message including a second representation of the command set; and

transmitting, by the one or more processors and via the control bus, the local control message to initiate the operational state change of the one or more systems.

2. The method of claim 1 , wherein obtaining the extensible mapping comprises obtaining a file defining the extensible mapping between the local control message and the standard control message.

3. The method of claim 1 , wherein translating the standard control message comprises:

translating, by the vehicle hardware abstraction layer, without the operating system requesting the vehicle hardware abstraction layer to perform the translation, and based on the extensible mapping, the standard control message to obtain the local control message.

4. The method of claim 1 , further comprising:

receiving, via the control bus, a second local control message;

translating, based on the extensible mapping, the second local control message to obtain a second standard control message; and

updating, based on the second standard control message, one or more operational states of one or more vehicle parameters.

5. The method of claim 1 , further comprising obtaining an updated extensible mapping that defines a different mapping between the local control message and the standard control message.

6. The method of claim 1 , wherein the one or more systems of the vehicle include a heating, ventilation, and air conditioning system of the vehicle.

7. The method of claim 1 , wherein the control bus protocol comprises a controller area network (CAN) protocol.

8. The method of claim 1 , wherein the local control message includes a local control message formatted in accordance with one of a DBC format or a Kayak CAN definition (KCD) format.

9. The method of claim 1 , further comprising:

issuing, to the one or more systems of the vehicle, an exploratory command set to initiate an exploratory operational state change of the one or more systems;

responsive to issuing the command set and after the exploratory operational state change, obtaining, from the one or more systems, respective indications of an actual operational state of each of one or more vehicle parameters;

determining, for the exploratory command set, one or more dependencies between the actual operational states of the one or more vehicle parameters; and

generating, based on the one or more dependencies, the extensible mapping to translate the command set from the local control message to the standard control message.

10. A device configured to interact with a vehicle, the device including a vehicle head unit integrated into the vehicle, the vehicle head unit comprising:

a memory configured to store an extensible mapping between a local control message specified in accordance with a control bus protocol and a standard control message supported by an operating system; and

one or more processors configured to:

execute the operating system to control one or more systems of the vehicle, provide entertainment for occupants of the vehicle, and information regarding the vehicle, the operating system configured to generate the standard control message and provide an execution environment in which one or more applications execute, the standard control message including a first representation of a command set to initiate an operational state change of the one or more systems;

execute a vehicle hardware abstraction layer to:

provide a software shim between a control bus, coupled to the one or more processors and the one or more systems, and the operating system; and

translate, based on the extensible mapping, the standard control message to obtain the local control message, the local control message including a second representation of the command set; and

transmit, via the control bus, the local control message to initiate the operational state change of the one or more systems.

11. The device of claim 10 , wherein the one or more processors are configured to obtain a file defining the extensible mapping between the local control message and the standard control message.

12. The device of claim 10 , wherein the one or more processors are configured to:

translate, by the vehicle hardware abstraction layer, without the operating system requesting the translation, and based on the extensible mapping, the standard control message to obtain the local control message.

13. The device of claim 10 , wherein the one or more processors are further configured to:

receive, via the control bus, a second local control message;

translate, based on the extensible mapping, the second local control message to obtain a second standard control message; and

update, based on the second standard control message, one or more operational states of one or more vehicle parameters.

14. The device of claim 10 , wherein the one or more processors are further configured to obtain an updated extensible mapping that defines a different mapping between the local control message and the standard control message.

15. The device of claim 10 , wherein the one or more systems of the vehicle include a heating, ventilation, and air conditioning system of the vehicle.

16. The device of claim 10 , wherein the control bus protocol comprises a controller area network (CAN) protocol.

17. The device of claim 10 , wherein the local control message includes a local control message formatted in accordance with one of a DBC format or a Kayak CAN definition (KCD) format.

18. A non-transitory computer-readable storage medium having stored thereon instructions that, when executed, cause one or more processors of a vehicle head unit to:

execute an operating system to control the vehicle head unit and one or more systems of the vehicle, provide entertainment for occupants of the vehicle, information regarding the vehicle, and provide an execution environment in which one or more applications execute;

obtain an extensible mapping between a local control message specified in accordance with a control bus protocol and a standard control message supported by the operating system, the operating system configured to generate the standard control message, the standard control message including a first representation of a command set to initiate an operational state change of the one or more systems;

execute a vehicle hardware abstraction layer to:

provide a software shim between a control bus, coupled to the one or more processors and the one or more systems, and the operating system; and

translate, based on the extensible mapping, the standard control message to obtain the local control message, the local control message including a second representation of the command set; and

transmit, by the one or more processors and via the control bus, the local control message to initiate the operational state change of the one or more systems.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 14, 2020
From: WASILCZYK, TOMASZ PAWEL; KARSHENBOYM, YEVGENIY RUVINOVICH; PAIK, STEVE; RANDOLPH, SCOTT
To: GOOGLE LLC
Reel/Frame 052663/0664 →
Continuity (2)
Provisional Application 62720701 · Aug 21, 2018
Related Publication 20200396101A1 · Dec 17, 2020