博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
OBD Problem Vehicles
阅读量:5107 次
发布时间:2019-06-13

本文共 3218 字,大约阅读时间需要 10 分钟。

 

This page contains a list of vehicles that are known to be non-compliant with OBD-II in one way or another. Typically, the vehicles have problems initiating or maintaining a connection, or incorrect data formats. Each listing specifies which vehicles are affected, provides a summary of the problems, and suggests known workarounds.

2001 Nissan Altima
2001 Nissan Sentra
2001 Nissan Xterra

Problem 1:

The ECU goes to sleep (uninitialized state) immediately after receiving any unsupported request. The problem is compounded by the fact that some ECUs indicate that certain TIDs are supported, while sending a request for any of these TIDs will immediately put the ECU to sleep.

Example:

>090049 00 01 3C 00 00 00

ECU reported that TIDs $03, $04, $05, and $06 are supported. While TIDs $03 and $05 are in fact supported, an attempt to request TIDs $04 and $06 return a “NO DATA” response. Any subsequent requests will also return “NO DATA” until the bus is reinitialized:

>090349 03 08>0904NO DATA>0903NO DATA>atpcOK>0903BUS INIT: ...OK49 03 08

Workaround:

The software must avoid requesting unsupported requests. If a “NO DATA” response is received, the software should send a “0100″ request to verify that the connection is still active, and reinitialize the connection if a “NO DATA” response is received. The software must then “remember” not to send the unsupported request.

Problem 2:

The ECU strictly enforces intermessage time between the end of all vehicle-sourced responses and the start of the next diagnostic tester request (P3, 55 ms). If P3 is violated, the ECU will immediately go to sleep, and would need to be reinitialized for communication to continue. which use the “adaptive timing” algorithm to achieve higher refresh rates (such as OBDLink), may violate P3 and lose connection to the vehicle.

Example:

>0100141 00 BE 1F B8 11>41 00 BE 1F B8 11>41 00 BE 1F B8 11>NO DATA>NO DATA

In the example above, the first command specifies that only one response is expected. It is then repeated by sending “newline” characters at the command prompt. Eventually, a request is sent too soon after receiving the response, and the ECU goes to sleep.

Workaround 1:

The software must ensure that a request is sent no sooner than 55 ms (P3) after receiving a response from the vehicle. If connection is lost (“0100″ returns “NO DATA”), the software should increase the intermessage time, and attempt to reinitialize the bus.

Note: keep in mind that the software receives the message some time after the ECU finished transmitting it. It takes time for the OBD interface to process and retransmit the message, and the operating system may introduce additional delays. For optimal performance, set the delay to zero, and increment it until the connection can be reliably maintained.

Workaround 2:

Disable adaptive timing, and set the “NO DATA” timeout to $0F (~60 ms). This can be done as part of the OBD interface startup sequence by the software:

>ATAT 0OK>ATST 0FOK

The changes can be made permanent, by saving them in non-volatile memory (remember to reset the device for the settings to take effect):

>ATPP 03 SV 0FOK>ATPP 04 SV 00OK>ATPP 03 ONOK>ATPP 04 ONOK>ATZ
 

转载于:https://www.cnblogs.com/satng/p/3271955.html

你可能感兴趣的文章
linux中启动与终止lnmp的脚本
查看>>
gdb中信号的处理[转]
查看>>
学习Javascript闭包(Closure)
查看>>
LeetCode【709. 转换成小写字母】
查看>>
如何在Access2007中使用日期类型查询数据
查看>>
Jzoj4757 树上摩托
查看>>
CF992E Nastya and King-Shamans(线段树二分+思维)
查看>>
基于docker的spark-hadoop分布式集群之一: 环境搭建
查看>>
oracle 几个时间函数探究
查看>>
第一个Java Web程序
查看>>
Atomic
查看>>
div 显示滚动条与div显示隐藏的CSS代码
查看>>
Redis-1-安装
查看>>
Access denied for user ''@'localhost' to database 'mysql'
查看>>
微信公众号里面使用地图导航
查看>>
部署支持 https 的 Nginx 服务
查看>>
‘Cordova/CDVPlugin.h’ file not found
查看>>
WebAssembly是什么?
查看>>
C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件)...
查看>>
树状数组_一维
查看>>