Systems and methods for detection of vehicle bus protocol using signal analysis
AssigneeCalAmp Corp.
InventorsHomika Bijjala, Stephen Hall
Life of this patent
Estimating the term…
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.
Claims17
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.
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.
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.
Dependencies are inferred from the claim text.