VPW Communication Protocol
http://www.fastfieros.com/tech/vpw_communication_protocol.htm
Breakdown of the j1850 3 byte Header format
Byte1 = priority
Bits 7,6 and 5 are priority 0=High, 7=Low
Bit 4 is header style (0=3 byte header-GM, 1=1 byte header-??)
Bit 3 is In Frame Response (0=Required-Ford, 1=Not allowed-GM)
Bit 2 is addressing mode (1=Physical, 0=Functional)
Bit 1,0 is message type: (depending on bit 2 and 3 see below)
Bit 3 2 1 0
-----------
Functional
1 0 0 0 Function
1 0 0 1 Broadcast
1 0 1 0 Query
1 0 1 1 Read
Physical
1 1 0 0 Node to Node
1 1 0 1 Reserved
1 1 1 0 Reserved
1 1 1 1 Reserved
Byte2 = physical ID of destination
Byte3 = physical ID of source
Typical Physical ID's, PCM = $10, Off-board scan tool = $F1
Header Byte
$48 : 001-0-1-0-00 : Priority 1, 3 byte header, In Frame Response Not Alloed ( GM), Functional Addressing
$68 : 011-0-1-0-00 : Priority 3, 3 byte header, In Frame Response Not Alloed ( GM), Functional Addressing
$6C : 011-0-1-1-00 : Priority 3, 3 byte header, In Frame Response Not Alloed ( GM), Physical Addressing
Functional Addresses:
ID Function
----- ----------------------------
$6A Request Legislated Diagnostics (bit 0 (W bit) = 0 Command)
$6B Report Legislated Dianostics (bit 0 (W bit) = 1 Status)
Request current value of PID ($00..$20)
Send: $68,$6A,$F1 :$01,$PID
Recv: $48,$6B,$10 : $41,$PID,[up to 5 data bytes]
Physical Node Addresses:
ID Module
--------- ----------------------------
$00-$1F Powertrain controllers
$00-$0F Integration/Manufacturer Expansion
$10-$17 Engine controllers
$18-$1F Transmission controllers
$20-$3F Chassis controllers
$20-$27 Integration/Manufacturer Expansion
$28-$2F Brake controllers
$30-$37 Sterring controllers
$38-$3F Suspension controllers
$40-$C7 Body controllers
$40-$57 Integration/Manufacturer Expansion
$48-$5F Restraints
$60-$6F Driver information/Diplays
$70-$7F Lighting
$80-$8F Enterntainment
$90-$97 Personal communications
$98-$9F Climate control (HVAC)
$A0-$BF Convenience (doos, Seats, Windows, etc.)
$C0-$C7 Security
$C8-$CB Electric Vehicle Energy Transfer System (EV-ETS)
$C8 Utility connection services
$C9 AC to AC conversion
$CA AC to DC conversion
$CB Energy storage management
$CC-$CF Future expansion
$D0-$EF Manufacturer specific
$F0-$FD Off-Board Testers/Diagnostic scan tools
$FE All nodes
$FF Null node
Examples of VPW Code (Functional Messages)
For the OBDII mandated diagnostics, requsts are actually made to the functional address $6A,
with whatever processor is responsible for this function answering the request.
Theoretically many different processors can respond to a single functional request,
each contributing their insight as to the information requested.
Request current value of PID ($00..$20):
- Send: $68,$6A,$F1,$01,$PID
- Recv: $48,$6B,$10,$41,$PID,[up to 5 data bytes]
Request freeze frame value of PID ($00..$20):
- Send: $68,$6A,$F1,$02,$PID,$FRAME
- Recv: $48,$6B,$10,$42,$PID,$FRAME,[up to 5 data bytes]
where FRAME is $01..$06 and is the freeze frame number from which to retrieve the PID's history data.
Examples of VPW Code (Physical Messages)
Request GM VIN:
- Send: $6C,$10,$F1,$3C,$01
- Recv: $6C,$F1,$10,$7C,$01,[VIN segment 1 data]
- Send: $6C,$10,$F1,$3C,$02
- Recv: $6C,$F1,$10,$7C,$02,[VIN segment 2 data]
- Send: $6C,$10,$F1,$3C,$03
- Recv: $6C,$F1,$10,$7C,$03,[VIN segment 3 data]
Request GM PCM#:
- Send: $6C,$10,$F1,$3C,$04
- Recv: $6C,$F1,$10,$7C,$04,[PCM #, 4 data bytes]
Request enhanced PID ($0000..$FFFF):
- Send: $6C,$10,$F1,$22,$PID-hsb,$PID-lsb,$01
- Recv: $6C,$F1,$10,$62,$PID-hsb,$PID-lsb,[up to 5 data bytes]
Requesting a DTC
The $XX byte in the following command: $6C,$10,$F1,$19,$XX,$FF,$00
is the status byte. It has the following "bitmapped" values:
- $80 - MIL is illuminated
- $40 - Pending trouble code
- $20 - Old code - MIL was illuminated for this code but is no longer illuminated.
- $10 - History code with freeze frame data available.
- $08 - Manufacturer specific status (I do not know what this means).
- $04 - Manufacturer specific status (I do not know what this means).
- $02 - Current code.
- $01 - Immature code.
To get real trouble codes you should request only
$80+$10+$02=$C2
To get real trouble codes AND pending trouble codes request:
$80+$40+$10+$02=$D2
VPW Communication Protocol的更多相关文章
- Vehicle’s communication protocol
http://www.crecorder.com/techInfo/commuProtocols.jsp COMMUNICATION PROTOCOLS A “communication protoc ...
- MySQL8.0.16新特性:The Communication Protocol In Group Replication
MGR优雅升级到MySQL8.0.16 传统的升级手段之一,5.7 MGR集群与8.0 MGR集群进行数据传输,程序切换新集群后测试是否正常. 如果不正常,要么将新集群的新增数据同步回旧集群,要么就舍 ...
- DB2 和 有道词典冲突: A communication error has been detected. Communication protocol being used: Reply.fill().
我在本机安装了DB2 9.5. 使用java jdbc连接,一直没有问题. QC for db2 连接 也一直没有问题. 突然有一天 Java程序连接 报错: A communication erro ...
- Serial Communication Protocol Design Hints And Reference
前面转载的几篇文章详细介绍了UART.RS-232和RS-485的相关内容,可以知道,串口通信的双方在硬件层面需要约定如波特率.数据位.校验位和停止位等属性,才可以正常收发数据.实际项目中使用串口通信 ...
- 无线电源传输 Wireless Power Consortium (WPC) Communication
Universally Compatible Wireless Power Using the Qi Protocol Wireless charging of portable electronic ...
- Design Your Own Protocol In Five Minutes
https://mayaposch.wordpress.com/2011/10/03/design-your-own-protocol-in-five-minutes ---------------- ...
- 分布式计算 要不要把写日志独立成一个Server Remote Procedure Call Protocol
w https://en.wikipedia.org/wiki/Remote_procedure_call In distributed computing a remote procedure ca ...
- 前端学HTTP之网络基础
× 目录 [1]网络 [2]OSI [3]TCP/IP 前面的话 HTTP协议对于前端工程师是非常重要的.我们在浏览网站时,访问的每一个WEB页面都需要使用HTTP协议实现.如果不了解HTTP协议,就 ...
- WCF学习系列二---【WCF Interview Questions – Part 2 翻译系列】
http://www.topwcftutorials.net/2012/09/wcf-faqs-part2.html WCF Interview Questions – Part 2 This WCF ...
随机推荐
- SSH框架面试题
Hibernate工作原理及为什么要用? 原理: 1. 读取并解析配置文件 2. 读取并解析映射信息,创建SessionFactory 3. 打开Sesssion 4. 创建事务Transation ...
- javascript中createTextRange用法(focus)
createtextrange createrange区别: 对象或元素不同,虽然都是返回TextRange.例如: var r=document.body.createTextRange() ...
- windowsphone8.0 iso 下载地址
中文版http://download.microsoft.com/download/F/5/6/F56AD199-EF12-43C7-8551-C095394D3B32/fulltril30/iso/ ...
- 软件测试——boost单元测试 C++
分类: 1. 下载安装Boost 2. 在vs2010 中设置 工具->选项->vc++目录 设置包含文件目录:找到解压的boost文件夹eg:C:\boost_1_43_03. ...
- Android实现button一边圆角一边直角
http://www.it165.net/pro/html/201503/36211.html
- Quartz.net 2.0的使用说明
Quartz.NET是一个开源的作业调度框架,是OpenSymphony 的 Quartz API的.NET移植,它用C#写成,可用于WinForm和ASP.NET应用中.它提供了巨大的灵活性而不牺牲 ...
- 线程局部变量ThreadLocal的原理及使用范围_1
线程局部变量ThreadLocal的原理及使用范围 使用原理 每个Thread中都有一个ThreadLocalMap成员, 该成员是ThreadLocal的内部类ThreadLocalMap类型.每使 ...
- 传统企业,"哀兵必胜"的想法要不得
[文/ 任英杰]同事在内网上发了一篇文章『哀兵必胜』,思量数日,作文应对.文中表达的积极精神让人敬佩,但背后似乎隐含着一股莫名的“情绪”.对行业大格局的基本看法会影响公司转型的成败,觉得还是有必要讨论 ...
- C#控件前缀命名规范
标准控件 1 btn Button 2 chk CheckBox 3 ckl CheckedListBox 4 cmb ComboBox 5 dtp DateTimePicker 6 lb ...
- 黑马程序员——Objective-c特性
1. 继承 Objective-c不支持多继承. Super 关键字:调用该类的父类: 超类:父类的另一种说法. 2.自定义NSLog()输出: 在类中添加description方法就可以自定义NS ...