IP Library Granted Patent US 11,539,550
Granted Patent B2
US 11,539,550 · App. 16/800,519 · Granted Dec 27, 2022

Systems and methods for detection of vehicle bus protocol using signal analysis

Inventors: Homika Bijjala (Irvine, CA); Stephen Hall (Santa Ysabel, CA)
Assignee: CalAmp Corp.
H04L12/4013H04L12/40013H04L43/08H04L69/22H04L2012/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,539,550
App. No.
16/800,519
Granted
Dec 27, 2022
Kind
B2
Abstract

Embodiments of the invention include a vehicle telematics device that performs vehicle CAN bus discovery using bit timing analysis. In an embodiment, the vehicle telematics device enters a vehicle CAN bus protocol discovery mode, samples a vehicle CAN bus signal, performs bit timing analysis of the CAN bus signal, calculates a BAUD rate of the vehicle CAN bus based on the bit timing analysis, determines a data packet format of data packets on the vehicle CAN bus, and identifies a vehicle CAN bus protocol from a plurality of vehicle CAN bus protocols based on the calculated BAUD rate and data packet format.

Claims (59)

1. A vehicle telematics device in a vehicle, comprising:

a processor and a memory storing a vehicle telematics application; and

a communication interface for communicating with a remote server system and a plurality of vehicle modules on a vehicle Controller Area Network (CAN) bus of the vehicle;

wherein the processor of the vehicle telematics device, on reading the vehicle telematics application, is directed to:

enter a vehicle CAN bus protocol discovery mode;

sample a vehicle CAN bus signal;

perform bit timing analysis of the vehicle CAN bus signal, wherein to perform the bit timing analysis comprises to (i) monitor for a state transition of the vehicle CAN bus signal, (ii) measure, in response to a detection of the state transition, a pulse width of each valid high pulse and each valid low pulse occurring within a sample time after the detection of the state transition, and (iii) determine a bit timing of the vehicle CAN bus signal based on an observed minimum length of the high and low pulses occurring during the sample time, wherein each valid high and low pulse is defined as a pulse having a length falling within a window of valid bit pulse lengths for a BAUD rate of interest;

calculate a BAUD rate of the vehicle CAN bus signal based on the bit timing analysis;

determine a data packet format of data packets on the vehicle CAN bus; and

identify a vehicle CAN bus protocol from a plurality of vehicle CAN bus protocols based on the calculated BAUD rate and data packet format,

wherein the processor of the telematics device, on reading the vehicle telematics application, is further directed to set the vehicle CAN bus protocol to a default vehicle CAN bus protocol in response to a determination that the state transition has not been detected within a reference time period.

2. The vehicle telematics device of claim 1 , wherein the processor of the telematics device, on reading the vehicle telematics application, is directed to:

measure a data packet length for a plurality of data packets; and

select the data packet format based on the measured data packet lengths.

3. The vehicle telematics device of claim 1 , wherein the processor of the telematics device, on reading the vehicle telematics application, is directed to:

identify a data pattern in a header of a data packet; and

select the data packet format based on the identified data-pattern.

4. The vehicle telematics device of claim 1 , wherein the processor of the telematics device, on reading the vehicle telematics application, is directed to:

identify a timing pattern of a data packet; and

select the data packet format based on the identified timing pattern.

5. The vehicle telematics device of claim 1 , wherein the BAUD rate is at least one of the group consisting of 125 kbps, 250 kbps, 500 kbps, and 1 mbps, wherein the data packet format is at least one of the group consisting of an 11-bit standard data packet format and a 29-bit extended data packet format.

6. The vehicle telematics device of claim 1 , wherein the plurality of vehicle CAN bus protocols comprises an ISO 15765-4 CAN (11 bit ID,500 Kbaud), ISO 15765-4 CAN (29 bit ID, 500 Kbaud), ISO 15765-4 CAN (11 bit ID, 250 Kbaud), and ISO 15765-4 CAN (29 bit ID, 250 Kbaud).

7. The vehicle telematics device of claim 1 , wherein determining the data packet format comprises sampling and measuring data packets on the vehicle CAN bus for a threshold time period; and

selecting the data packet format based on a statistical analysis of the sampled data packets.

8. A method for performing a vehicle Controller Area Network (CAN) bus protocol discovery for a telematics device, comprising:

entering a vehicle CAN bus protocol discovery mode;

sampling a vehicle CAN bus signal;

performing bit timing analysis of the vehicle CAN bus signal, wherein performing the bit timing analysis comprises (i) monitoring for a state transition of the vehicle CAN bus signal, (ii) measuring, in response to a detection of the state transition, a pulse width of each valid high pulse and each valid low pulse occurring within a sample time after the detection of the state transition, and (iii) determining a bit timing of the vehicle CAN bus signal based on an observed minimum length of the high and low pulses occurring during the sample time, wherein each valid high and low pulse is defined as a pulse having a length falling within a window of valid bit pulse lengths for a BAUD rate of interest;

calculating a BAUD rate of the vehicle CAN bus signal based on the bit timing analysis;

determining a data packet format of data packets on the vehicle CAN bus;

identifying a vehicle CAN bus protocol from a plurality of vehicle CAN bus protocols based on the calculated BAUD rate and data packet format; and

setting the vehicle CAN bus protocol to a default vehicle CAN bus protocol in response to a determination that the state transition has not been detected within a reference time period.

9. The method of claim 8 , further comprising:

measuring a data packet length for a plurality of data packets; and

selecting the data packet format based on the measured data packet lengths.

10. The method of claim 9 , further comprising:

measuring the data packet length based on a transition edge (1 to 0) of a dominant start-of-frame bit to a transition edge (0 to 1) at beginning of 11+ bit period of recessive (=1) state.

11. The method of claim 8 , further comprising:

identifying a data pattern in a header of a data packet; and

selecting the data packet format based on the identified data pattern.

12. The method of claim 8 , further comprising:

identifying a timing pattern of a data packet; and

selecting the data packet format based on the identified timing pattern.

13. The method of claim 8 , wherein the BAUD rate is at least one of the group consisting of 125 kbps, 250 kbps, 500 kbps, and 1 mbps, wherein the data packet format is at least one of a group consisting of an 11-bit standard data packet format and a 29-bit extended data packet format.

14. The method of claim 8 , wherein the plurality of vehicle CAN bus protocols comprises an ISO 15765-4 CAN (11 bit ID,500 Kbaud), ISO 15765-4 CAN (29 bit ID, 500 Kbaud), ISO 15765-4 CAN (11 bit ID, 250 Kbaud), and ISO 15765-4 CAN (29 bit ID, 250 Kbaud).

15. The method of claim 8 , wherein determining the data packet format comprises sampling and measuring data packets on the vehicle CAN bus for a threshold time period; and

selecting the data packet format based on a statistical analysis of the sampled data packets.

16. A vehicle telematics device in a vehicle, comprising:

a processor and a memory storing a vehicle telematics application; and

a communication interface for communicating with a remote server system and a plurality of vehicle modules on a vehicle Controller Area Network (CAN) bus of the vehicle;

wherein the processor of the telematics device, on reading the vehicle telematics application, is directed to:

enter a vehicle CAN bus protocol discovery mode;

sample a vehicle CAN bus signal;

perform bit timing analysis of the vehicle CAN bus signal, wherein to perform the bit timing analysis comprises to (i) monitor for a state transition of the vehicle CAN bus signal, (ii) measure, in response to a detection of the state transition, a pulse width of each valid high pulse and each valid low pulse occurring within a sample time after the detection of the state transition, and (iii) determine a bit timing of the vehicle CAN bus signal based on an observed minimum length of the high and low pulses occurring during the sample time, wherein each valid high and low pulse is defined as a pulse having a length falling within a window of valid bit pulse lengths for a BAUD rate of interest;

calculate a BAUD rate of the vehicle CAN bus signal based on the bit timing analysis;

measure a data packet length for a plurality of data packets based on a transition edge (1 to 0) of a dominant start-of-frame bit to a transition edge (0 to 1) at beginning of 11+ bit period of recessive (=1) state;

select a data packet format based on the measured data packet lengths; and

identify a vehicle CAN bus protocol from a plurality of vehicle CAN bus protocols based on the calculated BAUD rate and data packet format.

17. The vehicle telematics device of claim 16 , wherein the BAUD rate is at least one of the group consisting of 125 kbps, 250 kbps, 500 kbps, and 1 mbps, wherein the data packet format is at least one of a group consisting of an 11-bit standard data packet format and a 29-bit extended data packet format.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Aug 14, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: CALAMP CORP.; CALAMP WIRELESS NETWORKS CORPORATION; SYNOVIA SOLUTIONS LLC
Reel/Frame 068604/0595 →
RELEASE OF SECURITY INTEREST Recorded Dec 18, 2023
From: PNC BANK, NATIONAL ASSOCIATION
To: CALAMP CORP
Reel/Frame 066059/0252 →
PATENT SECURITY AGREEMENT Recorded Dec 18, 2023
From: CALAMP CORP.; CALAMP WIRELESS NETWORKS CORPORATION; SYNOVIA SOLUTIONS LLC
To: LYNROCK LAKE MASTER FUND LP [LYNROCK LAKE PARTNERS LLC, ITS GENERAL PARTNER]
Reel/Frame 066061/0946 →
PATENT SECURITY AGREEMENT Recorded Dec 18, 2023
From: CALAMP CORP.; CALAMP WIRELESS NETWORKS CORPORATION; SYNOVIA SOLUTIONS LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 066062/0303 →
SECURITY INTEREST Recorded Jul 14, 2022
From: CALAMP CORP.; CALAMP WIRELESS NETWORKS CORPORATION; SYNOVIA SOLUTIONS LLC
To: PNC BANK, NATIONAL ASSOCIATION
Reel/Frame 060651/0651 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 27, 2022
From: BIJJALA, HOMIKA; HALL, STEPHEN
To: CALAMP CORP.
Reel/Frame 060039/0989 →
Cited By (1)
US 12,219,039