B&B Electronics LDVDSV2-S-P9D User Manual

OBDII Streamer Command & Response V2.11
OBDII STREAMER FAMILY
User Implementation Document
Page 1/49
OBDII Streamer Command & Response V2.11
Table of Contents
Table of Contents ................................................................................................................ 2
Document Revision History ................................................................................................ 4
Communication Protocol Definition ................................................................................... 5
Overview ............................................................................................................................. 6
Startup Procedure ................................................................................................................ 6
Non-Volatile Storage .......................................................................................................... 7
Transferring to a New Vehicle ............................................................................................ 7
Ignition Detection ............................................................................................................... 7
Low Power Modes .............................................................................................................. 8
Settings ................................................................................................................................ 9
Overview ......................................................................................................................... 9
Time Based Updates ................................................................................................... 9
Threshold Based Updates ........................................................................................... 9
As Requested Updates ................................................................................................ 9
BAUD ............................................................................................................................. 9
OEM_ID ......................................................................................................................... 9
Update Mode ................................................................................................................. 10
Enable_Parameters ........................................................................................................ 10
Parameters ......................................................................................................................... 11
0x00 Vehicle Speed ...................................................................................................... 12
0x01 Engine Speed ....................................................................................................... 12
0x02 Throttle Position................................................................................................... 12
0x03 Odometer.............................................................................................................. 12
0x04 Fuel Level ............................................................................................................ 12
0x07 Engine Coolant Temp .......................................................................................... 13
0x08 Ignition Status ...................................................................................................... 13
0x09 MIL Status ........................................................................................................... 13
0x0C Fuel Rate ............................................................................................................. 13
0x0D Battery Voltage ................................................................................................... 13
0x0E PTO Status ........................................................................................................... 13
0x0F Seatbelt Fastened ................................................................................................. 13
0x10 — 0x1A Monitors ................................................................................................ 14
0x1B Brake Switch Status ............................................................................................ 14
0x22 Trip Odometer ...................................................................................................... 14
0x23 Trip Fuel Consumption ........................................................................................ 14
Commands ........................................................................................................................ 15
0x02 – READ_MODEL_NUMBER ............................................................................ 15
0x03 – GET_COMPONENT_VERSIONS .................................................................. 16
0x04 – OBDII_FIRMWARE_VERSION (Obsolete) .................................................. 17
0x05 – FIRMWARE_VERSION (Deprecated) ........................................................... 17
0x06 – DATABASE _VERSION (Deprecated) .......................................................... 18
0x07 – READ_SERIAL_NUMBER............................................................................. 19
0x09 – CONFIG_OEM_ID .......................................................................................... 20
0x15 – SERIAL_BAUD ............................................................................................... 21
Page 2/49
OBDII Streamer Command & Response V2.11
0x20 – GET_SUPPORTED_PARAMETERS ............................................................. 22
0x21 – ENABLE_PARAMETERS .............................................................................. 23
0x22 – GET_PARAMETER......................................................................................... 25
0x23 – GET_VEHICLE_STATUS............................................................................... 27
0x24 – REDETECT_VEHICLE ................................................................................... 28
0x25 – GET_VEHICLE_INFO .................................................................................... 29
0x30 – SET_TIME_UPDATES .................................................................................... 31
0x31 – SET_THRESHOLD_UPDATES ...................................................................... 33
0x32 – SET_FULLSPEED_UPDATES (Obsolete) .................................................... 34
0x33 – READ_PARAMETER_UPDATE_MODES .................................................... 35
0x35 – SET_UPDATE_MODE .................................................................................... 37
0x57 – UPDATE_COMPONENT ................................................................................ 38
0x59 – UPGRADE_FIRMWARE (Obsolete) ............................................................. 42
0x60 – UPDATE_EEPROM (Obsolete) ...................................................................... 42
0x61 – RESET_TRIP .................................................................................................... 42
Status Messages ................................................................................................................ 43
0x80 – DEVICE_CONFIGURED ................................................................................ 43
0x81 – VEHICLE_NOT_DETECTED......................................................................... 43
0xA3 – Ignition/OBDII Status ...................................................................................... 44
0xC0 – Time Based Update Message ........................................................................... 45
0xC1 – Threshold Based Update Message ................................................................... 46
0xD0 – Ignition Off Status Message ............................................................................. 46
0xFF – Error Messages ................................................................................................. 47
Component file structures ............................................................................................. 48
Glossary ............................................................................................................................ 49
Page 3/49
OBDII Streamer Command & Response V2.11
Document Revision History
Version Date Changes Author
2.00 10/30/08 Brought over from V1 Streamer and updated for new/revised functionality
2.01 1/28/09 Revised based on comments from PSA and a team. review.
2.02 08/3/09 Added Bootloader update to UPDATE_COMPONENT command
2.03 11/30/09 Added Keepalive message comtrol bypass command and revised the document. Made some minor clarification changes
2.04 1/26/2010 Reviewed and updated with final changes to V2 prior to beta release
2.05 2/8/2010 Updates for KWP15 protocol and sleep mode is gone complete, no set sleep mode, no wake from sleep and no set low power mode behavior.
2.06 3/12/2010 Update bypass protocol definition Matt Ollayos
2.07 5/3/2011 Incorrect behavior found describing threshold updates.
2.08 12/13/11 Updated based on Management comments Chris Politsch
2.09 1/27/12 Removed unused messages Chris Politsch
2.10 2/14/12 Updated Command 0x21 Chris Politsch
2.11 3/19/13 Removed unsupported parameters, bypass mode references
Larry Reeves
Steve Sagerian
Alexandr Kolodinsky Alexandr Kolodinsky
Steve Sagerian
Steve Sagerian
Matt Ollayos
Larry Reeves
Page 4/49
OBDII Streamer Command & Response V2.11
Communication Protocol Definition
All commands and responses to or from the OBDII Streamer are formatted in this style.
Byte Byte Byte(s) Byte Byte(s) Byte
Start of Frame Control Length Control Bytes Data Length Data Bytes Checksum
Start of Frame 0x01 – always 0x01.
Control Length The number of control bytes in the current message. The control
length of a request or response varies by command and will be defined under each command’s heading in this document.
Control Byte(s) The first control byte in a request is the command being sent. In a
response the control byte will be 0x80 greater than the request control byte.
Each command or response may have additional control bytes as
defined by the specific command or response. Each message must have at least one control byte.
Data Length The number of data bytes in the current message. Zero data byte
messages are valid.
Data Bytes This field contains the data portion of the message.
Checksum The checksum is a one-byte sum of all bytes including Start of
Frame, Control Length, Control Bytes, Data Length, and Data Bytes.
Checksum = Sum AND 0xFF
Page 5/49
OBDII Streamer Command & Response V2.11
Overview
The OBDII Streamer is an OBDII to Serial gateway. The raw data, multiple PIDs per parameter, and timing issues of the OBDII bus are abstracted from the host. The OBDII Streamer allows a developer to quickly access data from the vehicle without having knowledge of the OBDII bus.
The OBDII Streamer is intended to be permanently installed in a vehicle. Coupled with B&B Electronics OBDII Y-Cable the OBDII Streamer will immediately disconnect from the OBDII bus when another scan tool is connected to the bus.
The maximum update rate of data from the OBDII bus is 20Hz. Each parameter enabled constitutes one update from the vehicle. The update rate from the vehicle is not linked to any messages from the host. The host will be able to request data from the OBDII Streamer immediately after the previous response, but the OBDII data will be limited to an update rate of 20Hz.
Vehicle status parameters, such as the MIL, Fuel Level, and Battery Voltage, will be updated from the vehicle no faster than once every 2 seconds. The vehicle parameter DTC’s will be updated from the vehicle no faster than once every minute. The host can request these parameters from the OBDII Streamer at any rate desired.
Startup Procedure
When the OBDII Streamer is powered on a CRC check will be performed to verify that the code on the device is valid. This will take approximately 10 seconds and during that time the device is unable to respond to commands.
On initial power on the OBDII Streamer will attempt to detect the vehicle type and supported parameters. This process can take up to 1 minute. During this time the OBDII Streamer will be responsive to host requests. If the OBDII Streamer has detected a vehicle type and supported parameters it will not attempt to detect them again, even if the vehicle type and supported parameters have changed.
While the host is detecting the vehicle’s information most messages will be responded to with the following response.
0x01 0x01 0x81 0x00 0x83 //Vehicle Not (Yet) Detected Message
Page 6/49
OBDII Streamer Command & Response V2.11
The following commands will respond normally during startup:
- READ_MODEL_NUMBER
- FIRMWARE_VERSION
- READ_SERIAL
- UPGRADE_FIRMWARE
When the OBDII Streamer has finished the initialization sequence it will send a DEVICE_CONFIGURED message.
After this message is received the OBDII Streamer will be ready for communications.
Non-Volatile Storage
Most configuration settings and parameters are stored in non-volatile memory and do not have to be reconfigured on startup. The following settings and parameters are saved in non-volatile memory.
Serial Number BAUD OEM_ID Model Number VIN Firmware/EEPROM Versions Vehicle information (OBDII Bus and Available Parameters) Enabled/Disabled Parameters Update Modes (Time and Threshold based)
Transferring to a New Vehicle
The OBDII Streamer stores all vehicle information in non-volatile memory. To improve startup times in the event of a power loss all parameters will be reloaded from memory.
If the OBDII Streamer is removed from one vehicle and installed in another, the OBDII Streamer must be forced to detect. On startup the previous vehicle’s data will be loaded. The behavior of an OBDII Streamer will be unpredictable when connected to a vehicle that is different than the vehicle detected. To force the OBDII Streamer to redetect vehicle information send the REDETECT_VEHICLE command.
Ignition Detection
The vehicles J1962 diagnostic connector is always powered, even with the vehicle ignition off. The OBDII Streamer detects the ignition status by analyzing data retrieved over the OBDII bus. There are two methods used to determine ignition status.
First, the engine speed and vehicle speed are monitored from the vehicle. When engine speed and vehicle speed are detected as zero for 2 minutes the OBDII Streamer will enter Standby mode.
Page 7/49
OBDII Streamer Command & Response V2.11
Second, most vehicles stop responding to OBDII requests when the ignition is off. After 20 seconds of no responses from the vehicle the OBDII Streamer will enter Standby mode.
The OBDII Streamer polls the vehicle for ignition status every two seconds. When the ignition status changes from off to on the device will return to normal mode and will send an ignition status message to the host.
Low Power Modes
Standby Mode:
During Standby Mode the vehicle is polled periodically to find out its ignition status. Standby Mode will be the default mode used.
Standby Mode is entered within 20 seconds of communications loss. Standby Mode is entered within 2 minutes of 0 RPM and 0 Vehicle Speed
(Vehicle Speed was added as a condition because a hybrid vehicle can turn the engine off and be running on the electric engine).
Standby Mode is exited within ten seconds after vehicle starts communicating LDV Streamer remains partially responsive to some communications while in
Standby Mode.
Maximum Power Consumption: 0.42W. Maximum Time from power-on to valid vehicle data: fifteen seconds when
vehicle is running.
When the vehicle’s battery voltage is below 12.6V the vehicle is no longer polled
to save more power. When the ignition is turned on the alternator will increase the voltage above 12.6V and the maximum time to normal running mode will be met.
Special Cases:
First Time Installation: The OBDII Streamer does not enter any low power
modes until it has been installed on a vehicle and has detected the supported parameters.
Firmware updates: After a firmware update, the OBDII Streamer will go into
the appropriate power state for normal operation.
Unintentional Reset (Battery removal, brownout, etc.): After an unintentional
reset, the OBDII Streamer will go into the appropriate power state for normal operation.
Move to Different Vehicle:
The LDV Streamer should remain in the appropriate low power mode until it has been determined that the engine is running.
The LDV Streamer requires a REDETECT_VEHICLE command to work properly after moving to a different vehicle.
Page 8/49
OBDII Streamer Command & Response V2.11
Settings
The following variables make up all of the settings that should be known or changed when using the OBDII Streamer.
Overview
The OBDII Streamer is capable of transmitting messages to the host automatically based on user set criteria. By default these messages are disabled.
Time Based Updates
“Time Based” updates will provide an update of all enabled parameters at every time interval specified by the user.
Time based updating will work simultaneously with “Threshold Based” updating and “As Requested” updating.
Threshold Based Updates
“Threshold Based Updating” will send an update to the host whenever an enabled parameter with threshold checking enabled exceeds the threshold.
“Threshold Based” updating will work simultaneously with “Time Based” updating and “As Requested” updating.
As Requested Updates
“As Requested” update mode allows the host to request a single parameter, or all parameters, at any time and receive a snapshot of the parameter values.
“As Requested” update mode is not an exclusive mode. This means that “Time Based”, and “Threshold Based” update modes can be enabled and parameters can still be requested at any time.
BAUD
The BAUD rate setting is only applicable to the RS-232 serial version of the OBDII Streamer. The BAUD rate will default to 115.2kbps.
OEM_ID
The OEM_ID field is available for the customer to program as they choose. This field is 10 bytes long and defaults to “LDV_OEM_ID”.
An example use of this field is to key the software to a particular piece of hardware.
Page 9/49
OBDII Streamer Command & Response V2.11
Update Mode
On initial power up all update modes are disabled. In order to use any of the update modes listed below they must be configured and enabled using the SET_UPDATE_MODE and CHANGE_PARAMETER_THRESHOLD commands.
- Time Based
- Threshold Based
In order to receive automatic messages based on time or threshold the CHANGE_PARAMETER_THRESHOLD command must be sent for each parameter.
Enable_Parameters
By default, all supported parameters will be updated from the vehicle. The Enable_Parameters command can be sent in order to enable updates on only the supported parameters.
Setting the Enable_Parameters command is desirable in some cases to increase the parameter update rate. The update rate for each parameter is equal to the total update rate from the vehicle divided by the number of enabled parameters.
The update rate from the vehicle is fixed and varies from vehicle to vehicle, but will not exceed 20Hz.
Page 10/49
OBDII Streamer Command & Response V2.11
Parameters
This list matches a parameter with its identifier.
ID Parameter Return Size Units Range
0x00 Vehicle Speed 2 Bytes MPH 0 to 160 0x01 Engine Speed 2 Bytes RPM 0 to 16384 0x02 Throttle Position 2 Bytes % 0 to 100 0x03 Odometer 4 Bytes Miles 0 to 999,992 0x04 Fuel Level 2 Bytes % 0 to 100 0x07 Engine Coolant Temp 2 Bytes ºF -40 to 983 0x08 Ignition Status 2 Bytes On/Off On/Off 0x09 MIL Status 2 Bytes On/Off On/Off 0x0C Fuel Rate 2 Bytes Gallons per Hour 0 to 29.99 0x0D Battery Voltage 2 Bytes Volts 0 to 18 0x0E PTO Status 2 Bytes On/Off On/Off 0x0F Seatbelt Fastened 2 Bytes Yes/No N/A 0x10 Misfire Monitor 2 Bytes Status N/A 0x11 Fuel System Monitor 2 Bytes Status N/A 0x12 Comprehensive Component
Monitor 0x13 Catalyst Monitor 2 Bytes Status N/A 0x14 Heated Catalyst Monitor 2 Bytes Status N/A 0x15 Evaporative System Monitor 2 Bytes Status N/A 0x16 Secondary Air System Monitor 2 Bytes Status N/A 0x17 A/C System Refrigerant Monitor 2 Bytes Status N/A 0x18 Oxygen Sensor Monitor 2 Bytes Status N/A 0x19 Oxygen Sensor Heater Monitor 2 Bytes Status N/A 0x1A EGR System Monitor 2 Bytes Status N/A 0x1B Brake Switch Status 2 Bytes Pressed/Not
0x22 Trip Odometer 4 Bytes Miles 0 to 999,992 0x23 Trip Fuel Consumption 4 Bytes Gallons 0 to 999,992
2 Bytes Status N/A
N/A
Pressed
Page 11/49
OBDII Streamer Command & Response V2.11
0x00 Vehicle Speed
Scaling Equation: Result = Returned Data * 1 / 410 Units: Miles per hour
EX: Return Data = 26650 Result = 26650 * 1 / 410 Result = 65 Miles per hour
0x01 Engine Speed
Scaling Equation: Result = Returned Data * 1 / 4 Units: Revolutions per Minute
EX: Return Data = 12000 Result = 12000 * 1 / 4 Result = 3000 Revolutions per Minute
0x02 Throttle Position
Scaling Equation: Result = Returned Data * 1 / 655 Units: %
EX: Return Data = 12000 Result = 12000 * 1 / 655 Result = 18.32 % Throttle Pedal Position
0x03 Odometer
Scaling Equation: Result = Returned Data * 1 / 1 Units: Miles
EX: Return Data = 58,125 Result = 58,125 * 1 / 1 Result = 58,125 Miles
0x04 Fuel Level
Scaling Equation: Result = Returned Data * 1 / 655 Units: %
EX: Return Data = 23578 Result = 23578 * 1 / 655 Result = 35.99 %
Page 12/49
OBDII Streamer Command & Response V2.11
0x07 Engine Coolant Temp
Scaling Equation: Result = (Returned Data * 1 / 64) - 40 Units: ºF
EX: Return Data = 14080 Result = (14080 * 1 / 64) - 40 Result = 180ºF
0x08 Ignition Status
Return Value of 1 = Ignition Off Return Value of 0 = Ignition On
0x09 MIL Status
Return Value of 1 = MIL Off Return Value of 0 = MIL On
0x0C Fuel Rate
Scaling Equation: Result = Returned Data * 1 / 2185 Units: Gallons per Hour
EX: Return Data = 25650 Result = 25650 * 1 / 2185 Result = 11.74 Gallons per Hour
0x0D Battery Voltage
Scaling Equation: Result = Returned Data * 1 / 3641 Units: Volts
EX: Return Data = 45650 Result = 45650 * 1 / 3641 Result = 12.538 Volts
0x0E PTO Status
Return Value of 1 = PTO Off Return Value of 0 = PTO On
0x0F Seatbelt Fastened
Return Value of 1 = Seat Belt not Fastened Return Value of 0 = Seat Belt Fastened
Page 13/49
OBDII Streamer Command & Response V2.11
0x10 — 0x1A Monitors
Return Value of 1 = Monitor Not Complete Return Value of 0 = Monitor Complete
0x1B Brake Switch Status
Return Value of 1 = Brake Switch Off Return Value of 0 = Brake Switch On
0x22 Trip Odometer
Scaling Equation: Result = Returned Data * 1 / 10 Units: Miles
EX: Return Data = 58,125 Result = 58,125 * 1 / 10 Result = 5,812.5 Miles
0x23 Trip Fuel Consumption
Scaling Equation: Result = Returned Data * 1 / 128 Units: Gallons EX: Return Data = 8,128 Result = 8128 * 1 / 128 Result = 63.5 Gallons NOTE: It is basically returned in Ounces.
Page 14/49
OBDII Streamer Command & Response V2.11
Commands
0x02 – READ_MODEL_NUMBER
Description: This command will return the model number as an alpha-numeric ASCII string.
The following model numbers can be returned depending on the type of Streamer used. LDVDSV2-S RS-232 OBDII Streamer
Command to Send: 0x01 0x01 0x02 0x00 0x04
Response: 0x01 0x01 0x82 DL MODEL CS
Field Description: MODEL Variable length model number up to 16 characters long. This field
is returned as ASCII characters.
DL Data Length (Length of model number)
CS Summation checksum
Example: TX: 0x01 0x01 0x02 0x00 0x04
RX: 0x01 0x01 0x82 0x09 0x4C 0x44 0x56 0x44 0x53 0x56 0x32 0x2D 0x53 0x12
The model number returned is LDVDSV2-S.
Page 15/49
Loading...
+ 34 hidden pages