OBD-II PID

OBD-II PID是車上診斷系統（OBD）參數ID的簡稱，是在診斷工具上向車輛請求資料用的編碼。

国际汽车工程师学会（SAE）標準 J1979（電子診斷測試模式）中定義了許多OBD-II PID。所有北美的道路車輛及卡車都要支援一部份的OBD-II PID，主要是在有強制的州。制造商也定義針對個別車輛的PID。目前沒有強制摩托車要支援OBD-II PID，不過也有許多的摩托車支援。

在1996年時，輕型商用車（重量小於）首先強制要支援OBD-II PID，之後是中型商用車（重量在之間）在2005年強制支援。輕型商用車及中型商用車都要可以透過由SAE J1962定義的標準進行存取。

依加州空氣資源局（CARB）的加州法規（CCR） sections 1971.1 title 13，美國2010年之後生產的重型商用車（重量大於）可以透過（圓型的診斷用連接頭）支援OBD-II的診斷機能。有些北美的重型卡車使用SAE J1962 OBD-II診斷連接器，這也是一般轎車常用的連接器，知名的有麥克貨車及富豪卡車，不過CAN識別符是29位元，不是一般轎車的11位元。

 模式 
在最新的OBD-II標準SAE J1979中，有列出十種診斷服務。2002年以前的J1979，將這些服務稱為模式（modes）。其說明如下：

 模式（十六進制）  敘述   顯示目前資料    顯示凍結的頁框資料   顯示已儲存的（DTC）   清除診斷錯誤碼以及儲存數值   測試結果，氧氣感測器監控（只在不用CAN傳輸時有效）   測試結果、其他元件／系統監控（測試結果，氧氣感測器監控只在用CAN傳輸時有效）   顯示未處理的診斷錯誤碼（在目前或上一次駕駛週期偵測到的診斷錯誤碼）   on-board元件或系統的控制動作   請求車輛的資訊   清除診斷錯誤碼

汽車制造商不一定要實現所有的服務，製造商可以在#9以上增加製造商定義的服務（例如服務22是由Ford/GM的SAE J2190所定義，而服務21是因Toyota而定義) ，這些服務可以提供其他的資料，例如混合动力电动汽车（HEV）中牽引電池的電壓。

非OBD的统一诊断服务從0x10開始，避免和ID範圍重疊。

 標準PID 
下表中所列的是依SAE J1979定義的標準OBD-II PID。也列出每個PID的預期回應，以及回應和實際物理量之間的關係。不是所有車輛都會支援每一個PID，也有一些PID是廠商定義的，不在OBD-II標準中。

服務01和02基本上是相同的，不過服務01會提供目前的資訊，而服務02會提供上一次出現診斷錯誤碼時的資訊。但PID 01和PID 02是例外，PID 01-{}-只出現在服務01，而PID 02-{}-只出現在服務02，若服務02的PID 02為零，表示沒有凍結的頁框資料，其他服務02的資料都沒有意義。

若用位元編碼表示（Bit-Encoded-Notation）時，像C4表示是資料位元組C的第4位元。每一個位元都有0到7的編號，7是最高位元，而0是最低位元。

 A B C D A7  A6  A5  A4  A3  A2  A1  A0 B7  B6  B5  B4  B3  B2  B1  B0 C7  C6  C5  C4  C3  C2  C1  C0 D7  D6  D5  D4  D3  D2  D1  D0
 服務 
 PID（HEX） PID（DEC） 回應資料位元組個數 描述 最小值 最大值 單位 公式   4 支持的PID[01 - 20] 位元編碼[A7..D0] == [PID $01..PID $20] 見以下敘述   4 自從DTC清除後的監控狀態，包括異常指示燈（MIL）狀態，以及DTC的個數 位元編碼。見以下敘述   2 凍結的DTC   2 燃油系統狀態 枚舉編碼。見以下敘述   1 計算的發動機負載 0 100 % （或）   1 發動機冷媒溫度 -40 215 °C    1 短期燃油調整—Bank 1 -100（燃油需減少：過多燃油） 99.2（燃油需增加：過少燃油） % (or  )   1 長期燃油調整—Bank 1   1 短期燃油調整—Bank 2   1 長期燃油調整—Bank 2   1 燃油壓力（） 0 765 kPa    1 進氣歧管絕對壓力 0 255 kPa    2 發動機速度 0 16,383.75 rpm    1 車輛速度 0 255 km/h    1 點火提前 -64 63.5 止点前的角度     1 進氣溫度 -40 215 °C    2 （MAF）空氣流率 0 655.35 grams/sec    1 油門位置 0 100 %    1 命令第二側空氣狀態 見以下敘述   1 有氧氣傳感器（2 banks時） [A0..A3] == Bank 1, 感測器1-4. [A4..A7] == Bank 2...   2 氧氣傳感器 1A:電壓B:短期燃油調整 0-100 1.27599.2 伏特
% （若B==$FF，傳感器未用來做燃油調整）   2氧氣傳感器 2A:電壓B:短期燃油調整   2氧氣傳感器 3A:電壓B:短期燃油調整   2氧氣傳感器 4A:電壓B:短期燃油調整   2氧氣傳感器 5A:電壓B:短期燃油調整   2氧氣傳感器 6A:電壓B:短期燃油調整   2氧氣傳感器 7A:電壓B:短期燃油調整   2氧氣傳感器 8A:電壓B:短期燃油調整   1 車輛使用的OBD標準 1 250 - 枚举。如下   1 存在的氧氣傳感器（在4 banks時） 類似PID 13，但[A0..A7] == [B1S1, B1S2, B2S1, B2S2, B3S1, B3S2, B4S1, B4S2]   1 輔助輸入狀態 A0 == （PTO）狀態（1 == 有效）[A1..A7] 未使用   2 發動機啟動後的運行時間 0 65,535 秒   4 支援的PID[21 - 40] 位元編碼[A7..D0] == [PID $21..PID $40] 見以下敘述   2 故障指示燈（MIL）亮時行駛的距離 0 65,535 km   2 高压共轨壓力（相對進氣歧管真空） 0 5177.265 kPa    2 高压共轨表壓力（柴油，或是汽油直接噴射） 0 655,350 kPa    4 氧氣偵測器1AB: 燃油-空氣當量比CD: 電壓 00 < 2< 8 ratioV    4　氧氣偵測器2AB: 燃油-空氣當量比CD: 電壓   4 氧氣偵測器3AB: 燃油-空氣當量比CD: 電壓   4 氧氣偵測器4AB: 燃油-空氣當量比CD: 電壓   4 氧氣偵測器5AB: 燃油-空氣當量比CD: 電壓   4 氧氣偵測器6AB: 燃油-空氣當量比CD: 電壓   4 氧氣偵測器7AB: 燃油-空氣當量比CD: 電壓   4 氧氣偵測器8AB: 燃油-空氣當量比CD: 電壓   1 排氣再循環（EGR）指令 0 100 %   1 EGR錯誤 -100 99.2 %    1 指令蒸發清除 0 100 %   1 燃油Tank水準輸入 0 100 %   1 錯誤碼清除後的暖機 0 255 count    2 錯誤碼清除後行駛的距離 0 65,535 km   2 蒸發系統蒸氣壓力 -8,192 8191.75 Pa 
（AB 是有號二補數）   1 絕對大氣壓 0 255 kPa     4 氧氣偵測器1AB: 燃油-空氣當量比CD: 電流 0-128 < 2<128 ratiomA or    4 氧氣偵測器2AB: 燃油-空氣當量比CD: 電流   4 氧氣偵測器3AB: 燃油-空氣當量比CD: 電流   4 氧氣偵測器4AB: 燃油-空氣當量比CD: 電流   4 氧氣偵測器5AB: 燃油-空氣當量比CD: 電流   4 氧氣偵測器6AB: 燃油-空氣當量比CD: 電流   4 氧氣偵測器7AB: 燃油-空氣當量比CD: 電流   4 氧氣偵測器8AB: 燃油-空氣當量比CD: 電流   2 催化劑溫度：Bank 1，感測器1 -40 6,513.5 °C    2 催化劑溫度：Bank 2，感測器1   2 催化劑溫度：Bank 1，感測器2   2 催化劑溫度：Bank 2，感測器2   4 支援的PID[41 - 60] 位元編碼[A7..D0] == [PID $41..PID $60] 見以下敘述   4 監控狀態，目前駕駛週期 位元編碼 見以下敘述   2 控制模組電壓 0 65.535 V    2 絕對負載值 0 25,700 %    2 燃油–空氣命令等效比 0 < 2 ratio    1 相對油門位置 0 100 %   1 環境空氣溫度 -40 215 °C    1 絕對油門位置B 0 100 %   1 絕對油門位置C   1 加速踏板位置D   1 加速踏板位置E   1 加速踏板位置F   1 指令油門致動器   2 MIL燈亮的行駛時間 0 65,535 分   2 錯誤碼清除後的時間   4 燃油-空氣當量比最大值, 氧氣偵測器電壓，氧氣偵測器電流，及進氣歧管絕對壓力 0, 0, 0, 0 255, 255, 255, 2550ratio, V, mA, kPa A, B, C, D*10   4 質量空氣流量計的最大空氣流率 0 2550 g/s A*10, B, C和D保留   1 燃料種類 燃料種類碼。見以下敘述   1 乙醇燃料百分比 0 100 %   2 蒸發系統絕對蒸氣壓力 0 327.675 kPa    2 蒸發系統（相對）蒸氣壓力 -32,767 32,768 Pa ((A*256)+B)-32767   2 第二側氧氣偵測器短期修正，A：bank 1, B：bank 3 -100 99.2 %    2 第二側氧氣偵測器長期修正，A：bank 1, B：bank 3   2 第二側氧氣偵測器短期修正，A：bank 2, B：bank 4   2 第二側氧氣偵測器長期修正，A：bank 2, B：bank 4   2 高压共轨絕對壓力 0 655,350 kPa   1 加速踏板相對位置 0 100 %   1 油電混合電池組剩下壽命 0 100 %   1 發動機油溫 -40 210 °C   2 燃料噴射正時 -210.00 301.992 °    2 發動機燃料率 0 3212.75 L/h    1 車輛設計的排氣要求 位元編碼   4 支援的PID[61 - 80] 位元編碼[A7..D0] == [PID $61..PID $80] 見以下敘述   1 駕駛的發動機命令-力矩百分比 -125 130 % A-125   1 實際發動機-力矩百分比 -125 130 % A-125   2 發動機參考力矩 0 65,535 Nm   5 發動機力矩百分比資料 -125 130 % A-125 閒置B-125 發動機點1C-125 發動機點2D-125 發動機點3E-125 發動機點4   2 支援輔助輸入／輸出 位元編碼   5 質量空氣流量計   3 發動機冷媒溫度 °C   7 進氣溫度感測器   7 EGR命令及EGR錯誤   5 柴油進氣空氣流率控制命令及相對進氣氣流位置   5 排氣再循環溫度   5 油門致動器控制命令和相對油門位置   6 燃料壓力控制系統   5 噴射壓力控制系統   3 渦輪增壓壓縮機入口壓力   9 提昇壓力控制   5 可變幾何渦輪增壓（VGT）控制   5 洩壓閥（Wastegate）控制   5 排氣壓力   5 渦輪增壓器RPM   7 渦輪增壓器溫度   7 渦輪增壓器溫度   5 增壓空氣冷卻器溫度（Charge air cooler temperature，CACT）   9 排氣溫度（EGT）Bank 1 特別PID。見以下敘述   9 排氣溫度（EGT）Bank 2 特別PID。見以下敘述   7 柴油粒子過濾器（DPF）   7 柴油粒子過濾器（DPF）   9 柴油粒子過濾器（DPF）溫度 °C   1 NOx NTE（）控制區狀態   1 PM NTE（）控制區狀態   13 發動機運行時間 seconds   4 支援的PID[81 - A0] 位元編碼[A7..D0] == [PID $81..PID $A0] 見以下敘述   21 給輔助排放控制設備（AECD）的發動機運行時間   21 給輔助排放控制設備（AECD）的發動機運行時間   5 NOx感測器  1 歧管表面溫度  10 NOx試劑系統  5 粒子（PM）感測器  5 進氣歧管絕對壓力13選擇性觸媒還原 (SCR）引入系統41AECD #11-#15的運行時間41AECD #16-#20的運行時間7柴油後處理16O2感測器（廣義）1油門位置G0100%1發動機摩擦力-力矩百分比 -125130% 5PM感測器Bank 1 & 23WWH-OBD車輛OBD系統資訊hours5WWH-OBD車輛OBD系統資訊hours2燃料系統控制3支援WWH-OBD車輛OBD計數器hours12NOx警告及誘導系統9排氣溫度感測器9排氣溫度感測器6油電混合車/電動車系統資料，電池，電壓4柴油車排氣流體感測器資料17O2感測器資料4發動機燃油率g/s2發動機燃油流率kg/h9燃料系統使用百分比   4 支援的PID[A1 - C0] 位元編碼[A7..D0] == [PID $A1..PID $C0] 見以下敘述9NOx感測器校正資料ppm2汽缸燃油率mg/stroke9蒸發系統蒸氣壓Pa4變速箱實際檔位4柴油排氣液體量4里程錶 0 526 385 151.9 公引（km/10）     4 支援的PID[C1 - E0] 0x0 0xffffffff 位元編碼[A7..D0] == [PID $C1..PID $E0] 見以下敘述   ? ? ? ? ? 回傳數值資料，包括駕駛條件ID及發動機速度*   ? ? ? ? ? B5是發動機閒置請求B6是發動機停止請求* PID（HEX） PID（DEC） 回應資料位元組個數 描述 最小值 最大值 單位 公式

 服務 
服務的PID和服務相同，意義也相同，不過資訊是在產生凍結頁框時的資料。

需要在訊息的資料區中傳送頁框號碼。

 PID(hex) 回應資料位元組個數 描述 最小值 最大值 單位 公式  2 產生凍結頁框，要儲存資料的DTC BCD編碼。格式如下

 服務 
 PID(hex) 回應資料位元組個數 敘述 最小值 最大值 單位 公式 N/A n*6 請求錯誤碼 每個訊息三個錯誤碼。見以下敘述

 服務 
 PID(hex) 回應資料位元組個數 描述 最小值 最大值 單位 公式 N/A 0 清除錯誤碼 / 故障指示燈（MIL） / 檢查發動機燈 清除所有儲存的錯誤碼，並且關閉故障指示燈

 服務 
 PID(hex) 回應資料位元組個數 描述 最小值 最大值 單位 公式  4 支持的OBD監控ID ($01 – $20) 0x0 0xffffffff  2 O2感測器Bank 1，感測器1 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 1，感測器2 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 1，感測器3 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 1，感測器4 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 2，感測器1 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 2，感測器2 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 2，感測器3 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 2，感測器4 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 3，感測器1 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 3，感測器2 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 3，感測器3 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 3，感測器4 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 4，感測器1 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 4，感測器2 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 4，感測器3 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 4，感測器4 0.00 1.275 volts 0.005 Rich to lean sensor threshold voltage  O2感測器Bank 1，感測器1 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 1，感測器2 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 1，感測器3 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 1，感測器4 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 2，感測器1 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 2，感測器2 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 2，感測器3 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 2，感測器4 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 3，感測器1 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 3，感測器2 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 3，感測器3 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 3，感測器4 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 4，感測器1 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 4，感測器2 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 4，感測器3 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage  O2感測器Bank 4，感測器4 0.00 1.275 volts 0.005 Lean to Rich sensor threshold voltage PID(hex) 回應資料位元組個數 描述 最小值 最大值 單位 公式

 服務  
 PID(hex) 回應資料位元組個數 描述 最小值 最大值 單位 公式  4 服務9支援的PID(01 to 20) 位元編碼[A7..D0] = [PID $01..PID $20] 見以下敘述  1 PID 中的VIN訊息計數，只針對ISO 9141-2、ISO 14230-4及SAE J1850. 多半數值會是5  17 車輛識別號碼 (VIN) 17字元的VIN，ASCII編碼，若不滿17個字元，左邊會填入空字元（）  1 PID 中的校正ID訊息計數，只針對ISO 9141-2、ISO 14230-4及SAE J1850。 會是四的倍數（每一個ID需要四個訊息）  16,32,48,64.. 校正ID 最多16個ASCII字元。未使用的資料位元組會回傳空字元（）。可以輸出多個校正ID（每個ID 16個位元組）  1 PID 的校正驗證碼（CVN）訊息計數，只針對ISO 9141-2、ISO 14230-4及SAE J1850。  4,8,12,16 校正驗證碼（CVN）。可以輸出多個校正驗證碼（每個碼4個位元組），校正驗證碼和校正ID的數量需符合 原始資料，左邊會補空字元（），一般會以十六進制字串顯示。  1 PID 和的使用中性能跟踪訊息計數，只針對ISO 9141-2、ISO 14230-4及SAE J1850。 8 10 數值會是8表示要回應16個數值，數值會是9表示要回應18個數值，數值會是10表示要回應20個數值  4 火星塞點火發動機車輛的使用中性能跟踪 四個或五個訊息，每一個有四個位元組（二個數值）見以下敘述  1 PID  的ECU名稱訊息計數   20 ECU名稱 ASCII編碼，右邊會補空字元（）  4 壓縮點火發動機車輛的使用中性能跟踪 5個訊息，每個訊息4個位元組（2個數值）見以下敘述 PID(hex) 回應資料位元組個數 描述 最小值 最大值 單位 公式

 位元編碼PID 
上表中有部份的PID無法用簡單的公式來說明。以下是這些PID的細部說明。

 服務01 PID  
這個PID的請求會回傳4位元組的資料（Big-endian。每一個位元的排序順序是由MSB到LSB。表示接下來的32個PID，並且說明支援哪些PID。

例如，若汽車的回覆是，可以解碼如下

 十六進位             二進位                                                             是否支援                                                                            PID編號                                                            

因此，支援的PID有：、、、、、、、、、、、、、、、及

 服務01 PID  
這個PID的請求會回傳4位元組的資料，分別標示A B C、D。

第一個位元組（A）包括二部份的資訊。位元（位元組A的MSB）表示MIL（檢查發動機警示燈）是否點亮。位元到表示發動機控制器顯示的診斷故障碼。

第二至第四位元組（B, C和D）表示特定在線測試的可進行程度（availability）及完整性（completeness）。可用程度會用設定位元來表示，而完整性會用清除位元來表示。

 位元 名稱 敘述  MIL 關閉或點亮。為1表示CEL/MIL點亮（或應該點亮） - DTC_CNT 顯示幕上和尾氣排放相關DTC的個數  保留 保留（應該為）    = 支援火星塞點火監控（奧托發動機或汪克爾發動機）  = 支援壓縮點火監控（柴油發動機）

以下是常見的B位元組定義，是以測試為基礎的內容。

  可進行測試  測試不完整 元件    燃料系統    不發火   

第三位元組及第四位元組的定義會依發動機是火星塞点火（奧托發動機或汪克爾發動機）或柴油發動機而不同。第二位元組的bit 3會說明如何定義位元組C和D，表示是火星塞点火（奧托發動機或汪克爾發動機），表示是壓縮點火（柴油發動機）

火星塞点火監控時的位元組C和D （奧托發動機或汪克爾發動機）：
  可進行測試  測試不完整 尾氣再循環系統   氧氣偵測器加熱器    氧氣偵測器   冷氣冷媒    第二側空氣系統    蒸發系統    已加熱催化劑    催化劑   

柴油發動機監控時的位元組C和D：

  可進行測試  測試不完整 EGR（排氣再循環）及／或VVT（可變氣門正時）系統    PM過濾器監控    尾氣感測器    - 保留 -    提昇壓力    - 保留 -    NOx/SCR監控    NMHC催化劑   

 服務01 PID  
這個PID的請求會回傳4位元組的資料。 
第一個位元組會是0，第二個到第四個位元組會提供特定在線測試（on-board test）可進行程度（availability）及完整性（completeness）。和PID 01相同，第三和第四個位元組的定義會依發動機類型（B3）而不同，B3為表示是火星塞，為表示是壓縮點火。可進行程度（availability）是用位元表示，而完整性（completeness）是用位元表示。

以下是共用的位元組B的定義，以測試為基礎。
  可進行測試  測試不完整 元件    燃料系統    不發火   

針對火星塞點火監控的位元組C和D（奧托發動機或汪克爾發動機）：
  可進行測試  測試不完整 EGR系統   氧氣偵測器加熱器    氧氣偵測器   冷氣冷媒    第二側空氣系統    蒸發系統    已加熱催化劑    催化劑   

柴油發動機監控時的位元組C和D：
  可進行測試  測試不完整 EGR（排氣再循環）及／或VVT（可變氣門正時）系統    PM過濾器監控    尾氣感測器    - 保留 -    提昇壓力     - 保留 -    NOx/SCR Monitor    NMHC催化劑   

 服務01 PID 78 
這個PID的請求會回傳9位元組的資料。 
第一個位元組是位元編碼，表示支援的尾气溫度感測器：

 Byte  敘述   支援的尾氣感測器 -  EGT11讀到的溫度 -  EGT12讀到的溫度 -  EGT13讀到的溫度 -  EGT14讀到的溫度

第一個位元組的位元編碼如下：

 Bit  敘述 -  保留   EGT bank 1是否支援感測器4？   EGT bank 1是否支援感測器3？   EGT bank 1是否支援感測器2？   EGT bank 1是否支援感測器1？

剩下的位元組是16位元的整數，表示攝氏下的溫度，範圍從-40到6513.5（比例0.1），其轉換公式為（高位元組為A，低位元組是B）。只有有支援的感測器對應的值是有意義的。

PID 的結構相同，但是是針對bank 2的感測器。

 服務03（不需PID） 
此服務的請求會回傳一串已設定的DTC。會用ISO 15765-2的協定進行封裝。

若DTC不超過二個（4位元組），會用ISO-TP單一頁框格式（SF）回覆。若三個或三個以上的DTC，會分為多個頁框傳送，實際的頁框數會依通訊格式以及定址方式而定。

每個診斷錯誤碼為二個位元組。診斷錯誤碼的文字敘述如下。診斷錯誤碼的第一個字會由第一個位元組的前二個位元決定：
 -  DTC的第一個字元 00  —動力總成（Powertrain） 01  —底盤（Chassis） 10  —車體（Body） 11  —網路（Powertrain）

DTC碼的第二個字會由第一個位元組的下二個位元決定：

 -  DTC的第二個字元 00   01   10   11  

DTC碼的第三個字是一個數字，定義如下：

 -  DTC的第三個字元 0000   0001   0010   0011   0100   0101   0110   0111   1000   1001   1010   1011   1100   1101   1110   1111  

DTC碼的第四個字及第五個字定義方式類似，不過是用-和-位元。所產生的五個字元需類似之類的字元，而且可以在OBD-II DTC表上找到。最後三個字允許使用十六進制的數字（0-9, A-F），不過常見的還是使用十進制的數字（0-9）。

 服務09 PID 08 

會提供有關催化劑bank、氧氣偵測器bank、蒸發泄漏偵測系統、排氣再循環及第二側空氣系統的使用追蹤資訊。

每一個元件或是系統的分子針對偵測特定誤動作的監控，追蹤該監控所有條件成立的次數
每一個元件或是系統的分母針對該特定條件，車輛運作的次數

資料的個數需在訊息的一開始就說明（第一個位元組）

所有使用中性能追蹤的資料會包括二個位元組，依次數送出（每個訊息有二個資料，因此長度為4）

 Mnemonic  敘述 OBDCOND  OBD監控條件成立計數 IGNCNTR  點火計數 CATCOMP1  催化劑監控完成計數Bank 1 CATCOND1  催化劑監控條件成立計數Bank 1 CATCOMP2  催化劑監控完成計數Bank 2 CATCOND2  催化劑監控條件成立計數Bank 2 O2SCOMP1  O2感測器監控完成計數Bank 1 O2SCOND1  O2感測器監控條件成立計數Bank 1 O2SCOMP2  O2感測器監控完成計數Bank 2 O2SCOND2  O2感測器監控條件成立計數Bank 2 EGRCOMP  EGR監控完成條件計數 EGRCOND  EGR監控條件成立計數 AIRCOMP  AIR監控完成條件計數（第二組） AIRCOND  AIR監控條件成立計數（第二組） EVAPCOMP  EVAP監控完成條件計數 EVAPCOND  EVAP監控條件成立計數 SO2SCOMP1  第二組O2感測器監控完成計數Bank 1 SO2SCOND1  第二組O2感測器監控條件成立計數Bank 1 SO2SCOMP2  第二組O2感測器監控完成計數Bank 2 SO2SCOND2  第二組O2感測器監控條件成立計數Bank 2

 服務09 PID 0B 

此服務提供有關NMHC 催化劑監控、NOx 催化劑監控、NOx吸收器監控、PM過濾器監控、排氣感測器監控、GR（排氣再循環）及／或VVT（可變氣門正時）監控, 提昇壓力監控及燃料系統監控的使用性能資訊。

所有的資料都有2個位元，以以下的順序排列（每一個訊息有二個資料，因為是4個位元）：

 記憶字  敘述 OBDCOND  OBD監控條件計數 IGNCNTR  Ignition計數 HCCATCOMP  NMHC催化劑監控完成條件計數 HCCATCOND  NMHC催化劑監控條件計數 NCATCOMP  NOx/SCR催化劑監控完成條件計數 NCATCOND  NOx/SCR催化劑監控條件計數 NADSCOMP  NOx吸收器監控完成條件計數 NADSCOND  NOx吸收器監控條件計數 PMCOMP  PM過濾器監控完成條件計數 PMCOND  PM過濾器監控條件計數 EGSCOMP  排氣感測器監控完成條件計數 EGSCOND  排氣感測器監控條件計數 EGRCOMP  EGR（排氣再循環）及／或VVT（可變氣門正時）監控完成條件計數 EGRCOND  EGR及／或VVT監控條件計數 BPCOMP  提昇壓力監控完成條件計數 BPCOND  提昇壓力監控條件計數 FUELCOMP  燃料監控完成條件計數 FUELCOND  燃料監控條件計數

 枚舉PID 
有些PID的解讀方式比較特殊，是有枚举的型式，這類PID沒有位元定義，也沒有單位。

 服務01 PID  
這種PID的請求會回覆二個位元組的資料。
第一個位元組表示燃料系統#1。

 值  敘述 1  因為發動機溫度不足而開路 2  閉迴路，利用氧氣偵測器回授來決定fuel mix 4  因為發動機負載或是因減速燃料減少而開路 8  因為系統失效而開路 16  閉迴路，利用至少一個氧氣偵測器，但回授系統出現故障

其他的值無效。

第二個位元組表示燃料系統#1，定義完全相同。

 服務01 PID  
這種PID的請求會回覆一個位元組的資料，表示第二側空氣狀態。

 值  敘述 1  上游  2  催化轉化器的下游 4  來自外部大氣，或是關閉 8  泵浦因診斷機能而開啟

其他的值無效。

 服務01 PID  
此種PID請求會回覆一個位元組的資料，說明電子控制器使用的OBD標準。以下是數值以及其對應的標準。

 值  敘述 1  由（CARB）定義的OBD-II 2  由美国国家环境保护局定義的OBD 3  OBD及OBD-II 4  OBD-I 5  沒有相容的OBD 6  EOBD（歐洲） 7  EOBD及OBD-II 8  EOBD及OBD 9  EOBD、OBD及OBD II 10  JOBD（日本） 11  JOBD及OBD II 12  JOBD及EOBD 13  JOBD、EOBD及OBD II 14  保留 15  保留 16  保留 17  發動機製造商診斷（Engine Manufacturer Diagnostics、EMD） 18  發動機製造商增強診斷（Engine Manufacturer Diagnostics Enhanced、EMD+） 19  重載OBD（部份）（HD OBD-C） 20  重載OBD（HD OBD） 21  全球協調OBD（WWH OBD） 22  保留 23  重載歐盟OBD第一階段，沒有NOx控制（HD EOBD-I） 24  重載歐盟OBD第一階段，有NOx控制（HD EOBD-I N） 25  重載歐盟OBD第二階段，沒有NOx控制（HD EOBD-II） 26  重載歐盟OBD第二階段，有NOx控制（HD EOBD-II N） 27  保留 28  巴西OBD第一階段（OBDBr-1） 29  巴西OBD第二階段（OBDBr-2） 30  韓國OBD（KOBD） 31  印度OBD I（IOBD I） 32  印度OBD II（IOBD II） 33  重載歐盟OBD第四階段（HD EOBD-IV） 34-250  保留 251-255  沒有適合的系統（SAE J1939有特殊意義）

 燃料碼 
服務01 PID 會回傳數值，對應車輛的燃料型態。燃料型態一個位元組，數值和燃料對應如下：

 數值  描述 0  無 1  石油 2  甲醇 3  乙醇 4  柴油 5  液化石油气 6  壓縮天然氣 7  丙烷 8  電力 9  ，目前用汽油運行 10  生質燃料汽車，目前用甲醇運行 11  生質燃料汽車，目前用乙醇運行 12  生質燃料汽車，目前用LPG運行 13  生質燃料汽車，目前用CNG運行 14  生質燃料汽車，目前用丙烷運行 15  生質燃料汽車，目前用電力運行 16  生質燃料汽車，目前用電力及內燃機發動機運行 17  汽油燃料的油電車 18  乙醇燃料的油電車 19  柴油燃料的油電車 20  以電力運行的油電車 21  以電力及內燃機發動機運行的油電車 22  油電車，能源回昇模式 23  生質燃料汽車，目前用柴油運行

其他的值保留供ISO/SAE使用，目前沒有針對的定義。

 非標準的PID 
大部份的在使用的OBD-II PID都是非標準的，針對大部份現今的車輛，OBD-II界面中支持的非標準PID功能比標準PID功能還多，各家的非標準PID只有少部份的重疊。

在公眾領域中非標準PID的資訊相當有限。有一個以美國為主的（ETI）有維護一些廠商的非標準PID，只提供給其會員。ETI的年費和公司在北美車輛工具及設備的營業額有關：

 北美年營業額  年費 $10,000,000以下  $5,000 $10,000,000 - $50,000,000  $7,500 $50,000,000以上  $10,000
就算是ETI，也沒有所有非標準PID的文件。ETI表示： state:
 showing cost of access to OBD-II PID documentation
有些車廠拒絕用ETI來提供資訊給相關工具廠商。他們比較想和每一家工具廠商個別作生意。這些公司會要求你和他們簽合約。其費用是變動的，以下是2015年4月13日的年費：
通用汽車    $50,000豐田        $5,000鈴木        $1,000BMW         $25,500，每次更新要加$2,000，每年更新一次

 CAN（11位元）通訊格式 
在車內的CAN網路中會有查詢PID以及PID回覆的訊息。標準OBD查詢以及回覆會用機能式的地址。診斷讀取器會用CAN ID 7DFh送出查詢訊息，此位址是廣播位置，並且會接受從7E8h到7EFh的回覆。回覆OBD查詢的電子控制器也會接收7DFh廣播位置的訊息，並且接收7E0h到7E7h範圍內指定ID的訊息。其回應的ID是指定ID值加8，範圍從7E8h到7EFh。

此作法可以允許最多8個電子控制器，每一個都可以回覆OBD的查詢。診斷讀取器可以用ECU回覆的ID繼續和特定的電子控制器通訊。特別是多頁框的通訊需要特定ID電子控制器的回覆。

CAN也可以傳送標準OBD訊息以外的資訊，實體位址會用這些特殊模組的CAN訊息（例如720h是福特汽車的組合儀表），也會有專屬的頁框以及傳送資料。

 查詢 
機能性的PID查詢會用ID 7DFh的CAN訊息送出，其資料為：
 Byte PID Type 0  1  2  3  4  5  6  7  SAE標準 額外資料位元組的數量：2 服務01 = 顯示目前資料02 = 顯示凍結的頁框資料...... PID code（例如：05 = 發動機冷媒溫度） 未使用（ISO 15765-2建議用CCh） 個別車輛 額外資料位元組的數量：3 自定服務（例如，22 = 加強資料） PID碼（例如4980h） 未使用（ISO 15765-2建議用CCh）

 回應 
車輛會用訊息ID來回應PID查詢，其ID編輯和回應的模組有關。一般而言發動機及主發動機控制器會用ID 7E8h回應，其他設備，像是混合控制器或是Prius裡的電池控制器，會用07E9h、07EAh、07EBh等ID回應。設備回應的訊息ID會比其設備接收的訊息ID多8。回應值的長度會變動，但回應訊息固定都是8個位元。
各位元組的定義為：
 Byte PID Type 0  1  2  3  4  5  6  7  SAE標準7E8h, 7E9h, 7EAh, 等 額外資料位元組的長度：3到6 自定服務和查詢的相同，但服務編號會加上40h。因此：41h 是顯示目前資料；42h是顯示凍結的頁框資料等. PID code（例如05是發動機冷媒溫度） 特定參數的值，位元組0 值，位元組1（可選） 值，位元組2（可選） 值，位元組3（可選） 未使用（可以是00h或55h） 車輛指定7E8h，或實體模組ID + 8h 額外資料位元組的長度：4到7 自定服務和查詢的相同，但服務編號會加上40h。（例如，62h 是服務22h請求的回覆訊息） PID碼（例如4980h） 特定參數的值，位元組0 值，位元組1（可選） 值，位元組2（可選） 值，位元組3（可選） 車輛指定7E8h，或實體模組ID + 8h 額外資料位元組的長度：3 7Fh，此通用回應一般表示模組不識別請求 自定服務（例如22h是PID的加強診斷資料） 31h未使用（可以是00h）

相關條目
 发动机控制器
 ：OBD-II介面上常見的微控制器

參考資料

延伸閱讀

Category:科技相關列表
Category:汽车工程技术