Вы находитесь на странице: 1из 62

Product Training: OBDII

Calamp Products & Vehicle BUS Interface

Presented by: Ricky Kassab / Applications Engineer


2/7/2018
Lesson Outline

• What is CAN/OBDII?
• How Calamp Products Interface with OBDII
– Vehicle Data
– VIN Capturing
– Ignition Detection
– Miscellaneous
• PEG Script Settings
• Vehicle BUS Device Management
• Troubleshooting Tips

©2018 CalAmp Corporation Private and Confidential 2


SECTION 1

WHAT IS CAN and OBD2?

©2018 CalAmp Corporation Private and Confidential 3


What is a CAN?
• Controller Area Network (CAN)
• CAN is like the nervous system of a vehicle
– A specialized internal communications network that interconnects components known
as Electronic Control Unit (ECU) inside a vehicle.
• Examples of ECUs:
– Engine,
– Airbag,
– Transmission,
– etc.

©2018 CalAmp Corporation Private and Confidential 4


What is OBD2?
• On-Board Diagnostic (OBD) is a 16-pin connector allowing you to obtain data from a
vehicle.
• OBD2 provides the “language” to speak on the CAN Bus interface
• OBD-II Diagnostic Connector is known as: J1962 Connector
– Defined by SAE J1962 standard
– Typically for Light/Medium Duty vehicles

©2018 CalAmp Corporation Private and Confidential 5


Where is it located?
• OBD-II connector is required to be within 2 feet of the steering wheel (unless OEM gets
exemption).

• Could be hidden behind panels

©2018 CalAmp Corporation Private and Confidential 6


PIN-OUT of J1962 CONNECTOR

©2018 CalAmp Corporation Private and Confidential 7


SUPPORTED SIGNALING PROTOCOLS
• Common OBD2 protocols used

1. SAE J1850 PWM - standard of the Ford Motor Company


2. SAE J1850 VPW - standard of General Motors
3. ISO 9141-2 - primarily used in Chrysler, European, and Asian vehicles.
4. ISO 14230 KWP2000 - (Fast Init or 5-Baud Init).
5. ISO 15765 CAN - (250 kBit/s or 500 kBit/s/ 11-bit or 29-bit).

• After 2008 all vehicles sold in the US are required to implement ISO15765 CAN as one of
their signaling protocols.

©2018 CalAmp Corporation Private and Confidential 8


SIGNALING PROTOCOLS (cont.)

Image Courtesy of csselectronics.com

©2018 CalAmp Corporation Private and Confidential 9


COMMON CHALLENGES
• Emissions is the only “True Standard”
• Some data not accessible on the bus (Gateways)
• Orientation of J1962 Connector
• Other 3rd party products that are operating on the vBus
• Vehicles have different voltage characteristics
• Smart alternators (i.e. RPM stops changing) when in EV mode.

©2018 CalAmp Corporation Private and Confidential 10


Section 2

HOW CALAMP PRODUCTS INTERFACE WITH VBUS

©2018 CalAmp Corporation Private and Confidential 11


OBDII DEVICES & ACCESSORIES
• LMU3035 • VPOD2R Dongle • LMU423x / VPOD2R Daughterboard

©2018 CalAmp Corporation Private and Confidential 12


OBDII DEVICES & ACCESSORIES (cont.)
• LMU3640 • TTU3640 • V-SERIES

• VBU
• No more JPOD, VPOD
• Supports both light & heavy duty vehicle ECU data (on the same board)

©2018 CalAmp Corporation Private and Confidential 13


VBUS DATA
• What do you want from OBDII connector?
– Vehicle Data

• What is this data?


– Parameter IDs (PIDS)
– Generic
– OEM
– Indicators
– Diagnostic Trouble Codes (DTCs)
– VIN

©2018 CalAmp Corporation Private and Confidential 14


PARAMTER IDS (PIDS)
• What is a PID?
– These are specific codes to retrieve specific data from a vehicle.
– How do we know what codes to request?

• Standard PIDs
– Emission is the only standard
– Defined in SAE J/1979
– Examples: Engine RPM, Fuel Rate, Throttle Position

• Note: Do not confuse VBUS Parameter IDs (PIDS) with the Calamp Parameters

©2018 CalAmp Corporation Private and Confidential 15


PARAMETER IDS (PIDS)
• OEM PIDs
– Manufacturers define many more PIDs outside of the J1979 standard
– Examples: Odometer, Fuel Level %, Transmission Gear, Turn Signal Status
• How do we get this data?
– Reverse Engineering / OBDII Scan Tools
– Purchase Databases
– Sometimes not feasible
• Industry Challenge:
– Mixed Vehicle Fleets & need for OEM Parameters!

©2018 CalAmp Corporation Private and Confidential 16


CALAMP Parameter ID table
• Subset of CalAmp PID Table:

• Some are Standard

• Some are OEM Specific

• Any Questions on Parameters?

©2018 CalAmp Corporation Private and Confidential 17


VBUS INDICATORS
• What are VBUS Indicators?
– Boolean “On/Off” values retuned in a BIT MASK that describe specific conditions and
alerts
• Example: Malfunction Indicator Lamp or “MIL Status”

©2018 CalAmp Corporation Private and Confidential 18


VBUS INDICATORS – ID 0

©2018 CalAmp Corporation Private and Confidential 19


VBUS INDICATORS – ID 1

©2018 CalAmp Corporation Private and Confidential 20


VBUS INDICATORS
• Similar to PIDs, they need to be supported by vehicle
• Some are OEM Indicator BITs as well
• Can determine “Available Indicators” by looking at ATIV command:

©2018 CalAmp Corporation Private and Confidential 21


VBUS INDICATORS

©2018 CalAmp Corporation Private and Confidential 22


VIN Report Message
• Reported in every VIN report, app message type 131 (next slide).

• In addition to VIN, you also get the supported PIDs and Indicators available in this report

©2018 CalAmp Corporation Private and Confidential 23


VIN REPORT EXAMPLE
• Mini app msg 12 (0C), app message type 131 (00 83), length 194 bytes (00 C2)
83 05 51 61 05 30 57 01 01 01 0C 00BC 57 97 DF FD 00 83 00 C2 56 49 4E 3A 31 4E 34 42 4C 32 34 45 58 38 43 31 30 32 38 38 39
00 50 52 4F 54 4F 3A 35 00 50 41 52 41 4D 53 3A 30 2C 31 2C 32 2C 33 2C 34 2C 37 2C 38 2C 39 2C 31 31 2C 31 33 2C 31 34 2C 31
36 2C 31 39 2C 33 39 2C 34 31 2C 34 32 2C 34 35 2C 31 30 30 2C 31 30 31 2C 31 30 32 2C 31 30 33 2C 32 30 00 49 4E 44 43 54 52
53 3A 30 28 30 30 30 30 30 30 30 30 30 30 30 31 31 29 2C 31 28 31 31 31 31 30 31 31 30 30 31 30 31 31 31 31 29 00 59 4D 4D 45
3A 32 38 2C 34 37 2C 32 2C 34 32 39 34 39 36 37 32 39 35 00 4F 45 4D 50 41 52 41 4D 53 3A 31 2C 32 2C 33 00 4F 45 4D 50 52 4F
54 4F 53 3A 00

• Above string parses out to:


VIN:1N4BL24EX8C102889PROTO:5PARAMS:0,1,2,3,4,7,8,9,11,13,14,16,19,39,41,42,45,
100,101,102,103,20INDCTRS:0(0000000000011),1(111101100101111)YMME:28,47,2,
4294967295OEMPARAMS:1,2,3OEMPROTOS:
• Details available in document LMU3035 App Note

©2018 CalAmp Corporation Private and Confidential 24


DIAGNOSTIC TROUBLE CODES (DTC)
• DTCs are reported via Application Message 132
DTC Report Type
• Report Type 2 ‘all’ DTCs Number DTCs Reported
• Report Type 3 ‘unreported’ DTCs 1st DTC Type
1st DTC Code (MSB)
• Includes “DTC Type” before each DTC block: 1st DTC Code
1st DTC Code
1 = Current, 2=Pending, 3=Permanent 1st DTC Code
1st DTC Code (LSB)
2nd DTC Type
2nd DTC Code (MSB)
• Total of 4 Report Types (0-3) 2nd DTC Code
2nd DTC Code
2nd DTC Code
2nd DTC Code (LSB)
• PEG Actions control which type to be sent …
nth DTC Type
nth DTC Code (MSB)
nth DTC Code
nth DTC Code
nth DTC Code
nth DTC Code (LSB)
©2018 CalAmp Corporation Private and Confidential 25
App Message 132 Example (DTC)

45 00 00 76 00 10 00 00 80 11 AE 34 0A E0 4A B2 44 69 F2 37 50 1E 50 14 00 62 54 81 83 05 45 31 00 10 36 01 01 01 05 00 05 4E 66 A9 1A 4E
66 A9 1A 13 BF 6B 29 BA 18 A8 25 00 00 11 04 00 00 00 05 00 B9 09 00 01 9A FF A3 2F 0A 01 00 00 84 00 25 00 07 50 30 31 30 30 50 30 32 30
30 50 30 33 30 30 43 30 33 30 30 42 30 32 30 30 55 30 31 30 30 50 30 31 30 31

IP Header
UDP Header
Application Message (Type 5)
DTC Data:
00 84 Application Message Type (132=DTC)
00 25 App Msg Length
00 DTC Report Type (0=All DTC’s)
07 Number of DTC’s Reported
50 30 31 30 30 DTC Code 1
50 30 32 30 30 DTC Code 2
50 30 33 30 30 DTC Code 3
43 30 33 30 30 DTC Code 4
42 30 32 30 30 DTC Code 5
55 30 31 30 30 DTC Code 6
50 30 31 30 31 DTC Code 7

©2018 CalAmp Corporation Private and Confidential 26


VIN Capturing (Phase 1)

Utilize set Generic VBUS


Ignition ON Read VIN Accums
protocol

1. First Ignition ON event after install


2. Utilize set protocol (CAN 11/500k) to capture VIN*
3. Read VIN
4. Start VBUS accumulators based on script (Generic Support)

Not on CAN11/500 protocol?*


– Will Require manual VIN insertion and/or YMME insertion
– SMS, Param Write or using PULS APIs

©2018 CalAmp Corporation Private and Confidential 27


VIN Capturing (Phase2)

Start OEM
VIN Decode Receive OEM
VBUS
Process profile
Accumulators

1. VIN is sent to PULS and starts to the VIN decode process*


2. LMU Receives OEM Specific profile from PULS
3. Start OEM VBUS accumulators & other vehicle specific behavior

• *Unsuccessful VIN lookups to PULS will continue to use the generic parameters that are found on the
vehicle bus

©2018 CalAmp Corporation Private and Confidential 28


Ignition Detection
• Ignition Detection is a two stage process
– 1st stage: Decide when to wake up OBD
– 2nd stage: Decide if/when to declare Ignition is ON

• Why not always check?


– Avoid request while Engine is Off (battery, ECU waking up, dash lights, etc.)

©2018 CalAmp Corporation Private and Confidential 29


Virtual Ignition
• How to decide if Engine as been turned on?

• Voltage Differential
– Wakes unit up & check vehicle battery voltage
– If conditions met, OBD is powered and is given a window of time to poll bus.

• Alternator Noise
– Redundant check in the event Voltage Differential misses Engine On events

©2018 CalAmp Corporation Private and Confidential 30


Ignition On/Off Status

• Ignition On Detection
– RPM positive value within period of time

• Ignition Off Detection


– RPM=0 OR
– No response to RPM request fetch (3 consecutive no responses)
– Static or cached RPM:
– RPM below 800 AND
– Five consecutive unchanged readings AND
– No alternator noise AND
– Motion Sensor Low

©2018 CalAmp Corporation Private and Confidential 31


Hardwired Install (VPOD2R or 3640)
• True ignition
– Applies only to VPOD2R dongle/daughter board (not the LMU3035)
– Requires the White Wire from the 4pin connector of LMU to be installed to external
ignition on the vehicles
– If white line is active, input 0 goes high and it in turn controls OBD power
management
– Controlled in PARAM 3350 bit 0
– 1 = hardwired
– 0 = RPM
• Some downsides

©2018 CalAmp Corporation Private and Confidential 32


Ignition Broadcast Message
• Ignition On Message
• Ignition Off Message
• Useful for Hybrids or Electric Vehicles
• OEM message (may require reverse engineering)
• When configured, the FW will ignore RPM to detect Ignition ON or OFF

©2018 CalAmp Corporation Private and Confidential 33


Ignition Detection Summary

©2018 CalAmp Corporation Private and Confidential 34


Backup Battery
• The LMU3035 has a backup battery. (200 mAh)
– LAST GASP
– Report on Low Vehicle Battery

©2018 CalAmp Corporation Private and Confidential 35


BUS HOLD OFF
• Some Vehicles may be very sensitive to devices on the OBD II port and turn on Dash lights
if they see a diagnostic device polling on the OBD II interface at Vehicle startup/Ignition
On.

• To address this the LMU3035 senses the ignition turning ON and holds off turning power
to the OBD layer (default of 5 seconds) after giving enough time for Vehicle startup.

• This feature is enabled by default and cannot be turned off.

©2018 CalAmp Corporation Private and Confidential 36


BUS POLLING
• Sampling Interval – Parameter ID 3341
– This LMU configuration parameter controls how frequently the VBus parameters and indicators are
polled. Minimum value is 150 milliseconds. Default is 1-second

– Priority polling: RPM -> PID 1 -> RPM -> PID 2 -> repeat

• DTC sampling needs to be enabled in the PEG script

©2018 CalAmp Corporation Private and Confidential 37


Scan Tool / Tester Mode
• OBD device installed with a Y-cable posses a potential issue
• Other devices can be connected in conjunction with the
Calamp OBD device
• VBUS Trigger 36 detects when a scan tool is detected on the
BUS
• PEG Script can put the unit into “Passive” mode once
detected or simply shut off the OBD board.

©2018 CalAmp Corporation Private and Confidential 38


Section 3

PEG SCRIPT SETTINGS & CONFIGURATIONS

©2018 CalAmp Corporation Private and Confidential 39


S-REGISTER SETTING
• First need to setup S-Register to set what kind of Hardware Driver to use.

• S-Register 178
– Set to 9 for LMU-3035 or VPOD2R
– Set to 0 to disable OBD layer
– PEG actions now available to disable OBD layer

©2018 CalAmp Corporation Private and Confidential 40


Stream Settings Setup
• LMU 3035 Stream Configuration
– Use factory default settings in most cases (AT#FACTORY) because the hardware is built-
in
– Recommend removing Params 3072-3074 from config for 3035 so that settings are
correct
– 3072 controls stream mapping, 3073 controls Baud Rate and 3074 controls word
definition
• VPOD2R
Stream Port Rate Word
------ ---- ---- ----
7:VBUS 1:Aux2 115200 8/N/1

©2018 CalAmp Corporation Private and Confidential 41


INPUT WAKEUP MONITOR
• LMU-3035
– Input 4 on checked in param 1029

• VPOD II (based on LMU3035)


– Able to determine voltage differential to wake up

©2018 CalAmp Corporation Private and Confidential 42


Input mapping
LMU-4x20 LMU-3035 LMU-2x20 (2620/2720)
Input-0
Ignition Ignition Ignition
Input-1
In-1 sel Motion In-1 sel
Input-2
In-2 sel Pwr State In-2 sel
Input-3
In-3 sel Vbatt Low In-3 sel
Input-4
In-4 sel Batt Virt Ign In-4 sel
Input-5
In-5 sel Motion
Input-6
In-6 sel Pwr State
Input-7
In-7 sel Vbatt Low
Input-8
Motion Hi Temp
Input-9
VBUS Active VBUS Active
Input-10
Pwr State Batt Virt Ign
Input-11
Vbatt Low
Input-12
1BB Detect 1BB Detect
Input-13
Batt Virt Ign
Input-14
Pure Virt Ign Pure Virt Ign Pure Virt Ign

©2018 CalAmp Corporation Private and Confidential 43


ACCUMULATOR SETTINGS

0 (GPS
Speed)

GPS

©2018 CalAmp Corporation Private and Confidential 44


Using LMU MANAGER
• Parameter 1 is RPM
• Parameter 3 is Odometer
• Parameter 9 is Battery
Voltage
• Parameter 11 is Calculated
Odometer

©2018 CalAmp Corporation Private and Confidential 45


PEG TRIGGERS
• Vehicle Bus State (67)
– Modifier 0 – Change state to “Vehicle Not Detected”
– Modifier 1 - indicates VIN fetch is complete(no OEM support yet) – Good opportunity to send VIN report
– Modifier 3 – indicates VIN decode has completed and OEM support has been enabled – 3035 only

• Vehicle Bus Event (73)


– Modifier 0 - Issues with the server based VIN decode process and it is recommended to let the firmware
do its retry in 10 minutes
– Modifier 2 - indicates that a retry of the VIN decode process will not fix it since the VIN is possibly not
supported by partner server
– Modifier 10 – indicates that the VIN changed if VIN was manually entered
– Modifier 22 – indicates that OBD Board is disabled due to excessive CAN Bus errors. Ignition detection
falls back on to Virtual Ignition
– Modifier 23 – indicates that the OBD board is re-enabled
– Modifier 33 – indicates that OBD Board is Temporarily disabled due to excessive CAN Bus errors.
– Modifier 34 – indicates that the OBD board is Temporarily re-enabled
– Modifier 35 – indicates that DTCs have been successfully fetched
– Modifier 35 – 3rd Party Diagnostic Device has been detected

©2018 CalAmp Corporation Private and Confidential 46


PEG CONDITIONS
• Condition 48 – Vehicle Bus State
– This PEG Condition is bit-mapped and is updated when the Vehicle Detection State
changes.
– Modifier 16 - Vehicle not detected
– Modifier 17 - Vehicle detected

©2018 CalAmp Corporation Private and Confidential 47


VBUS PEG ACTIONS
• Vehicle Bus PEG Action 99
– Action Modifier 3 – Power On OBD board
– Action Modifier 4 – Power Off OBD board
– Action Modifier 5 – Redetect Vehicle
– Action Modifier 6 – Send Vehicle ID Report
– Action Modifier 7 – Reset Calculated Odometer value
– Action Modifier 8 – Send All DTCs
– Action Modifier 9 – Send Unsent DTCs
– Action Modifier 10 – Disable param sampling
– Action Modifier 14 – Stop All Bus Polling
– Action Modifier 15 – Resume All Bus Polling
– Action Modifier 18 – Initiate VIN decode
– Action Modifier 24 – Turn off power to OBD (issue on every power up and wakeup)
– Action Modifier 29 – Enter Passive Mode on next OBD power up
– Action Modifier 30 – Exit Passive Mode on Next Power Up
– Action Modifier 31 – Send All DTCs with type
– Action Modifier 32 – Send All Unsent DTCs with type

©2018 CalAmp Corporation Private and Confidential 48


Section 4

VBUS DEVICE MANAGEMENT

©2018 CalAmp Corporation Private and Confidential 49


PULS

• If the last PULS check-in contained VBUS information then


there will be a click-able link
©2018 CalAmp Corporation Private and Confidential 50
VBUS PAGE

• The ID Report Sting will tell you the FW as reported by the Device
• OBD FW & Database can be tab

©2018 CalAmp Corporation Private and Confidential 51


UPLOAD OBD FW

©2018 CalAmp Corporation Private and Confidential 52


UPLOAD OBD Database

©2018 CalAmp Corporation Private and Confidential 53


Supported Regions
• US – VBUS files start with “V05” (US/Canada)

• UK – VBUS files start with “V02” (Rest of world)

©2018 CalAmp Corporation Private and Confidential 54


SECTION 4

TROUBLESHOOTING OBD DEVICES

©2018 CalAmp Corporation Private and Confidential 55


COMMON OBD iSSUES
• No VIN available
• Missing Ignition Cycles / Trips
• Dash Lights
• Missing VBUS Data

©2018 CalAmp Corporation Private and Confidential 56


DISCOVERY PROCESS
• When did the issue occur?
– Was it right at ignition on or mid journey?
– Did it happen on the very first trip after installation or was it after several trips/days of normal behaviour?
– What was the day and time that the problem occurred?

• Are there any devices installed in the car that are communicating to Vehicle Bus/ECU? Examples below:
– OnStar.
– Wheelchair Lift.
– Aftermarket PTO (Power Take Off) or ESC (Electronic Stability Control).

• Collect device information:


– Parsed Vehicle ID report that supplies VIN, protocol, OBD Firmware & DB, supported parameters and any active DTCs.

• Provide YMME

• Describe Installation/Harnesses used

©2018 CalAmp Corporation Private and Confidential 57


TROUBLESHOOT
• Check PEG Script
– SREG178 was correct (Set to 9)
– Accumulators were set to poll for expected params
– Stream Settings

• Analyze Trip Data


– GPS Speed > 0 w/ no Ignition
– Battery Levels
– Has the device discovered

• Check Vehicle Compatibility


– Vehicle Protocol
– Firmware Compatiblity (LMU FW / OBD FW / DB FW)

• Inquire about installation


– Virtual Ignition or Hardwired?

©2018 CalAmp Corporation Private and Confidential 58


SMS COMMANDS
• The following SMS commands can be used to obtain the same information.
– !V0 – Get Basic Vbus ID information
– !VV – Get Vehicle information
– !VV <17-byte VIN>
– !VV CLEAR

• Sample Vehicle ID Report via SMS:


YMME:28,26,86,8 OEMPrms: OEMProto: DTCs Cnt:0
-Veh Disc- Yes VIN:5Y2SL65888Z416743 Proto:5
Params:0,1,2,7,9,11,14,20 Inds:0(0000000000011),1(01100101111)

©2018 CalAmp Corporation Private and Confidential 59


AT COMMANDS
• The AT commands at$app vbus? and ativ provide status information of the Vehicle Bus
interface such as:
– State, Version information and Vehicle Detection status and results.

• Version information section includes:


– Device Type, Region (US or UK), Firmware Version, Database Version

©2018 CalAmp Corporation Private and Confidential 60


Coming Soon…
• An API is about to be published that will return the supported vehicles and parameters in
the Calamp DB.

• Benefits: Live look at the Vehicle DB to know what is supported (and what’s not) that lists
all the Vehicle Profiles!

©2018 CalAmp Corporation Private and Confidential 61


SUMMARY
• We learned what a VBUS is and the physical connector
• Capabilities of OBDII Calamp Devices
– We learned about Engine Data from the BUS
– We learned about the VIN capture process
– We learned how Ignition ON/OFF is determined
• Introduced some basic PEG Settings and Configurations
• Showed VBUS Device Management and Firmware Upgrades using PULS
• Troubleshooting Techniques

©2018 CalAmp Corporation Private and Confidential 62

Вам также может понравиться