IP Library › Granted Patent US 12,160,326
Granted Patent B2
US 12,160,326 · App. 17/496,042 · Granted Dec 3, 2024

Dynamic controller area network messaging

Inventors: Amrit Gopal (Ypsilanti, MI); James Martin Lawlis (Grosse Pointe Farms, MI)
Assignee: FORD GLOBAL TECHNOLOGIES, LLC
H04L12/40169H04L12/4625H04L2012/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 12,160,326
App. No.
17/496,042
Granted
Dec 3, 2024
Kind
B2
Abstract

Dynamic controller area network (CAN) messaging is provided. A central gateway of a vehicle includes a processor and a storage, connected to a plurality of vehicle buses, each of the vehicle buses connected to one or more electronic control units (ECUs), The central gateway receives a message from a client of the ECUs, the message requesting a dynamic CAN signal. The message is forwarded over the plurality of vehicle buses to a server of the ECUs. A response from the server is received to the central gateway, the response specifying availability of the dynamic CAN signal. The response is forwarded to the client.

Claims (65)

1. A system for dynamic controller area network (CAN) messaging, comprising:

a central gateway of a vehicle, including a processor and a storage, connected to a plurality of vehicle buses, each of the vehicle buses connected to one or more electronic control units (ECUs), programmed to:

receive a message from a client of the ECUs, the message requesting a dynamic CAN signal, the dynamic CAN signal being dynamically available or unavailable over the plurality of vehicles buses,

forward the message over the plurality of vehicle buses to a server of the ECUs,

receive a response from the server, the response specifying potential availability of the dynamic CAN signal to the client but that the dynamic CAN signal is not already available,

forward the response to the client,

perform contract negotiation between the client and the server to add dynamic CAN signal as a new CAN message over the vehicle buses, and

send a message identifier assignment message to the client and to the server, the message identifier assignment message including one or more of a bandwidth requirement for the new CAN message, a message identifier for the new CAN message, a rate for sending the new CAN message, and a contract number corresponding to the new CAN message.

2. The system of claim 1 , wherein the response indicates a CAN message identifier and a bit position within a CAN message having the CAN message identifier at which the dynamic CAN signal is already available.

3. The system of claim 1 , wherein the central gateway is further programmed to:

analyze client bus bandwidth between the client and the central gateway,

analyze server bus bandwidth between the server and the central gateway, and

verify that the client bus bandwidth and the server bus bandwidth support addition of delivery of the dynamic CAN signal in a new CAN message.

4. The system of claim 1 , wherein the central gateway is further programmed to:

receive a setup contract message from the server responsive to receipt of the message identifier assignment message from the server;

pass the setup contract message to the client;

receive an accept contract message from the client responsive to receipt of the setup contract message to the client; and

pass the accept contract message to the server to cause the server to begin sending the new CAN message.

5. The system of claim 4 , wherein the central gateway is further programmed to:

receive a reject contract message from the client responsive to receipt of the setup contract message to the client; and

pass the reject contract message to the server to cause the server to refrain from sending the new CAN message.

6. The system of claim 1 , wherein the central gateway is further programmed to:

receive a query contract details message from a tester or logger device; and

responsive to receipt of the query contract details message, send one or more of the bandwidth requirement for the new CAN message, the message identifier for the new CAN message, the rate for sending the new CAN message, and the contract number corresponding to the new CAN message to the tester or logger device.

7. The system of claim 1 , wherein the central gateway is further programmed to:

send an I/O discovery message to each of the ECUs;

receive I/O discovery responses from the ECUs; and

maintain a storage of available I/O functions of the ECUs based on the I/O discovery responses.

8. The system of claim 7 , wherein the central gateway is further programmed to:

receive a control request from one of the ECUs requesting performance of one of the available I/O functions;

forward the control request to the one of the ECUs indicated in the storage as performing the requested I/O function;

receive a control response from the one of the ECUs indicated in the storage as performing the requested I/O function; and

forward the control response to the requesting one of the ECUs, the control response indicating a result or a value responsive to the I/O function.

9. A method for dynamic controller area network (CAN) messaging, comprising:

receiving, to a central gateway of a vehicle, the central gateway including a processor and a storage, connected to a plurality of vehicle buses, each of the vehicle buses connected to one or more electronic control units (ECUs), a message from a client of the ECUs, the message requesting a dynamic CAN signal, the dynamic CAN signal being dynamically available or unavailable over the plurality of vehicles buses,

forwarding the message over the plurality of vehicle buses to a server of the ECUs,

receiving a response from the server, the response specifying potential availability of the dynamic CAN signal to the client but that the dynamic CAN signal is not already available, and

forwarding the response to the client,

performing contract negotiation between the client and the server to add dynamic CAN signal as a new CAN message over the vehicle buses, and

sending a message identifier assignment message to the client and to the server, the message identifier assignment message including one or more of a bandwidth requirement for the new CAN message, a message identifier for the new CAN message, a rate for sending the new CAN message, and a contract number corresponding to the new CAN message.

10. The method of claim 9 , wherein the response indicates a CAN message identifier and a bit position within a CAN message having the CAN message identifier at which the dynamic CAN signal is already available.

11. The method of claim 9 , further comprising:

analyzing client bus bandwidth between the client and the central gateway,

analyzing server bus bandwidth between the server and the central gateway, and

verifying that the client bus bandwidth and the server bus bandwidth support addition of delivery of the dynamic CAN signal in a new CAN message.

12. The method of claim 9 , further comprising:

receiving a setup contract message from the server responsive to receipt of the message identifier assignment message from the server;

passing the setup contract message to the client;

receiving an accept contract message from the client responsive to receipt of the setup contract message to the client; and

passing the accept contract message to the server to cause the server to begin sending the new CAN message.

13. The method of claim 12 , further comprising:

receiving a reject contract message from the client responsive to receipt of the setup contract message to the client; and

passing the reject contract message to the server to cause the server to refrain from sending the new CAN message.

14. The method of claim 9 , further comprising:

receiving a query contract details message from a tester or logger device; and

responsive to receipt of the query contract details message, sending one or more of the bandwidth requirement for the new CAN message, the message identifier for the new CAN message, the rate for sending the new CAN message, and the contract number corresponding to the new CAN message to the tester or logger device.

15. The method of claim 9 , further comprising:

sending an I/O discovery message to each of the ECUs;

receiving I/O discovery responses from the ECUs; and

maintaining a storage of available I/O functions of the ECUs based on the I/O discovery responses.

16. The method of claim 15 , further comprising:

receiving a control request from one of the ECUs requesting performance of one of the available I/O functions;

forwarding the control request to the one of the ECUs indicated in the storage as performing the requested I/O function;

receiving a control response from the one of the ECUs indicated in the storage as performing the requested I/O function; and

forwarding the control response to the requesting one of the ECUs, the control response indicating a result or a value responsive to the I/O function.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 11, 2021
From: GOPAL, AMRIT; LAWLIS, JAMES MARTIN
To: FORD GLOBAL TECHNOLOGIES, LLC
Reel/Frame 057747/0750 →
Continuity (1)
Related Publication 20230116328A1 · Apr 13, 2023