自訂 PID · OBDb 目錄 · OBD-II · iPhone · CarPlay · WrenchTime Pro

iPhone 上的自訂 OBD-II PID,讀取車輛不主動公開的數據

自訂 PID,WrenchTime 稱之為自訂訊號,是針對 App 預設不顯示的讀數所發出的 OBD-II 請求:變速箱或機油溫度、增壓壓力、DPF 積碳量、原廠專屬開關。你很少需要自己寫。「從目錄匯入」會開啟「社區目錄」,涵蓋你這個廠牌的所有車型,來源包括 WrenchTime 訊號庫、OBDb 與 WiCAN;「開始完整掃描」會向你的車詢問清單上的每個訊號,並把每一個標為「有回應」、「無回應」或「錯誤」,連同讀到的數值。勾選有回應的訊號後一併匯入:每個都會帶著請求、公式、單位與儀表設定到位,而目錄中被歸為里程表、油位或電池電量的訊號,會成為這輛車該數值的來源,並在每趟行程後與 GPS 比對,通過後才會校正你的里程。匯入的訊號會顯示在「即時資料與狀態」、WrenchTime Live 儀表板、CarPlay 與行程的即時動態中,也可以隨每趟行程記錄。你仍然可以手動定義一個,或開啟別人以連結分享的訊號。它需要一個低功耗藍牙 ELM327 轉接器或 OBDLink MX+,以及 WrenchTime Pro。它只能讀取:自訂訊號中沒有任何東西能清除、寫入、重新編程或驅動車上的任何部件。

iPhone 上的 WrenchTime Live 儀表板,圓環儀表由 OBD-II 轉接器提供資料

什麼是自訂 PID?我什麼時候需要?

WrenchTime 自己就會讀取標準 Mode 01 參數:轉速、車速、負載、油門、冷卻水溫與進氣溫度、油位、電壓、進氣歧管壓力、燃油流量等等(請見 iPhone 用 OBD-II App指南)。車子知道的許多數值並不在其中,因為標準沒有要求,或原廠把它們放在引擎以外的模組裡。變速箱油溫、機油溫度、渦輪增壓、DPF 積碳量、電動車的電池單體電壓,或排檔位置,通常都屬於這一類。自訂 PID 就是你向車輛索取其中一項的方法。在 WrenchTime 裡,它位於「車輛」分頁,點開心跳按鈕進入「車輛工具」,在「訊號」之下,這是標準與自訂訊號並列的唯一清單,每一項都可以開關、排序,並送往你想要的位置。每個自訂訊號只屬於一輛車。

怎麼一步步為我的車設定自訂 PID?

從目錄開始,只要幾分鐘,也不需要公式。在轉接器已插上、引擎正在運轉的狀態下:轉接器必須先完成配對,如何連接 OBD-II 轉接器有說明。

  • 連線 開啟這輛車的「車輛工具」,輕點最上方轉接器卡片上的「連線」,讓工具在一段即時連線上運作。
  • 開啟目錄 在「訊號」中,三個點背後的選單有「從目錄匯入」。它會以該車廠牌的所有車型開啟,標示為「推薦」,並把你自己車型的訊號放在最前面;請保留這個設定,因為車輛常常也會回應歸在同系列其他車型之下的訊號。如果還沒設定,請在車輛上設定出廠年份,這樣目錄才能標示哪些訊號在該年份已驗證。
  • 全部測試 輕點「開始完整掃描」。清單上每個支援的訊號都會向車輛請求一次,完全不回應的控制單元會被略過,每個訊號都會標為「有回應」、「無回應」或「錯誤」,附上它回傳的數值與這次往返花了多久。
  • 匯入有回應的 勾選回應了合理數值的訊號,然後輕點「匯入」。車輛已有的訊號會被略過,而看起來不對的儀表範圍會在儲存前先指出。
  • 確認角色 如果匯入的訊號是車輛的里程表、油位、電池電量或續航,它會接手該數值;如果已有另一個訊號提供它,則由你選擇保留哪一個。
  • 安排位置 在「訊號」中各訊號自己的頁面上,替每個訊號開啟 CarPlay、Live 儀表板或行程記錄,或在「設定」裡把它加入行程的即時動態。

OBDb 目錄是怎麼運作的?

OBDb 是一個開放的社群專案,整理每個車型會回應的訊號,每個車型一個儲存庫,包含每個訊號的請求、要讀取的位元組與縮放比例;2026 年 10 月時,它約有九百個車款儲存庫。你打開這個畫面時,WrenchTime 會抓取目錄索引與你這個廠牌的各車型,在手機上把它們的定義轉換成一般的自訂訊號,並保留一份副本供離線時使用。這些定義採用 CC BY-SA 4.0 授權,並在目錄畫面中標明出處。

  • 先看車型,再看年份 清單會把你這個廠牌的所有車型併在同一份清單裡開啟,重複的合併,你自己車型的訊號放在最前面;也可以從「型號」選單挑單一車型,在你確定目錄涵蓋它時快速測試。如果目錄對某個廠牌沒有任何資料,就會改列出所有廠牌。車輛設定了出廠年份後,訊號會依該年份標示為「已驗證」或「未驗證」,而目錄只歸在其他年份之下的訊號,則放進另一個獨立群組「其他車型年份」,因為它的年份資料並不完整,這些訊號仍可能有效。
  • 轉換,而不是複製 每個 OBDb 訊號都會變成對應答位元組的 WrenchTime 公式,OBDb 有指明單位時就帶著真正的單位,所以溫度、速度或壓力都會依你自己的單位設定顯示;最小值與最大值會變成儀表,數值對照表會變成對照表,開關欄位則會變成狀態燈。
  • 什麼都不隱藏 App 目前還讀不了的訊號,例如需要診斷工作階段,或需要 WrenchTime 從不發送的轉接器設定的訊號,會連同原因列在「不支援」之下,而不是被丟棄。
  • 另外兩個來源 在 OBDb 之上是 WrenchTime 訊號庫,也就是 App 內建、WrenchTime 自己的自訂集合,涵蓋 Alfa Romeo Giulia 與 Stelvio 以及 BMW 引擎,離線也能用。在它之下,針對 OBDb 沒有涵蓋的車型,是 WiCAN 車輛設定檔,多半是電動車電池數據,每一項都標為未驗證。iPhone 上的 AlfaOBD以 Alfa Romeo 為實例。
  • 匯入前先檢視 輕點一個訊號,會開啟與分享連結相同的檢視:請求、解碼方式、它將顯示的單位、它來自哪個目錄車型、一個「立即讀取」測試,以及一個「匯入」按鈕。匯入後,它就是一般的自訂訊號,仍可編輯。

我怎麼知道目錄裡的哪些 PID 是我的車真正支援的?

直接問車。目錄列出的是某個車型能回應的內容,但車款等級、引擎、變速箱與軟體各有不同,所以 WrenchTime 在你匯入之前,會在你自己的車上測試每個訊號。單一列可以用滑動或長按來測試,整份可見的清單則用「開始完整掃描」;搜尋可以縮小完整測試的範圍。每一列隨後會顯示「有回應」與解碼後的數值、模組保持沉默時的「無回應」,或請求本身無法發出時的「錯誤」,另外附上這次往返花的毫秒數。測試送出的請求,與輪詢會送出的完全相同,並通過同樣的唯讀檢查。完整掃描會略過第一個訊號就沒有回應的控制單元,「測試圖」則為每個訊號顯示一個圓點;結果會保存在這支 iPhone 上、這輛車名下,方便你之後回來查看。有些控制單元只在引擎運轉時才回應,所以請在引擎運轉時測試。行程記錄期間會拒絕測試,這樣行程的遙測資料才不會有空缺;車輛停放休眠時也會拒絕,因為對上鎖的車發送診斷流量,正是某些防盜警報會反對的。很長的清單需要幾分鐘,有進度卡片與「中止」按鈕。目錄屬於 WrenchTime Pro。同樣的「開始完整掃描」也在「訊號」清單裡,免費,標準訊號和你的自訂訊號都適用;掃描之後,WrenchTime 會提議關閉那些已啟用但沒有回應的訊號,讓轉接器把時間花在你的車真正提供的讀數上。

自訂 PID 能讀取我車的里程表和油位嗎?

可以,這正是目錄訊號最能省事的地方。訊號可以被指派一個角色,也就是它所供應的車輛數值:里程表、油位、電池電量、燃油續航或純電續航。目錄訊號會帶著 OBDb 或訊號庫給它們的角色到來,以標籤顯示在該列上;匯入時,若沒有其他訊號擁有這個角色,就會設定它,若有,則會問你該由哪一個保留。你也可以在任何訊號的頁面上,於「用作」底下手動設定,標準或自訂都可以。一個角色,每輛車一個訊號。

  • 里程表,與你的里程相符 每趟行程結束時,車輛自己的里程表讀數會與同一段路程的 GPS 距離比對。當兩者相差在 10% 以內(且至少 0.5 km,在至少 2 km 的路段上),就證明該讀數是以正確的單位解碼,車輛的里程表便會對齊它,不論校正幅度多大,這很重要,因為第一次校準通常是最大的一次。太短而無法檢查的行程只會套用小幅校正,並提供較大幅度的校正讓你確認,同時顯示帶正負號的差值。它與自動行程追蹤搭配運作,每次校正都是里程表歷史中標示「汽車,行程結束後」的一行,而「設定」>「連線」中的「行程結束後校準里程表」可以將它關閉。
  • 立即讀取 從里程表自己的頁面,你也可以隨時讀取車輛的里程表,並在任何數值變動之前看到帶正負號的差值。行程進行中,它會顯示兩個數字但不套用任何東西,因為行程的距離只在結束時才加入,否則這段駕駛會被算兩次。
  • 燃油、電量與續航 油位或電池電量訊號會餵給燃油與電池的估算、加油表單,以及 Live 儀表板與即時動態上的續航卡片,它最後一次的讀數會在行程結束時隨車輛保存。燃油續航或純電續航訊號,則直接顯示為續航本身。

我能把自訂 PID 分享給別人嗎?

可以,以連結的方式。開啟一個已儲存的訊號並分享:連結帶著完整的定義,包括請求、解碼、單位與顯示方式,中間沒有任何伺服器。無論誰打開它,或在「訊號」的 + 選單中用「貼上連結」貼上它,都會在匯入任何東西之前看到請求與解碼方式,可以用「立即讀取」測試,並選擇要放進自己的哪輛車;僅以檢視權限分享給他們的車輛無法接受。來自他人的連結和其他任何自訂訊號一樣會送出唯讀請求,所以請只匯入你信任的人給的。這是在車友會或車型論壇裡傳遞一個可用 PID 的簡便方法。

自訂 PID 能發送哪些請求?

三種讀取服務,除此之外沒有別的,發送給你選擇的模組,並採用該模組使用的 CAN 定址方式。目錄訊號會替你把這一切都填好。

  • 服務 01、21 與 22 01 是標準的目前資料服務,21 是較舊的原廠專屬讀取,使用一個位元組的識別碼,22 則是使用兩個位元組識別碼的 UDS 依識別碼讀取,大部分新式原廠數值都在這裡。
  • ECU 標頭 自動(7DF,每個 OBD-II 模組都會聽的功能式請求)、引擎(7E0)、變速箱(7E1),或任何其他模組使用的自訂三位數標頭。標頭只針對該次請求設定,並在之後立即恢復為 7DF。使用自訂標頭的 PID 會在慢速層級輪詢,大約每八秒一次,因為每次讀取都要多花好幾次與轉接器之間的往返。
  • 標準、延伸或 29 位元定址 標準使用 11 位元 CAN 識別碼,大多數車輛都是如此。延伸用於閘道器後方、要求前置目標位元組的模組,需要一個回應 ID 以及支援它的轉接器。29 位元用於診斷採用 29 位元識別碼的車輛;當請求以 18DA 開頭時,回應 ID 可以留空,因為它是由請求推導出來的。
  • 另一種寬度,借用一輪 29 位元 PID 可在 OBD 埠以 11 位元回應的車上運作,反之亦然:WrenchTime 為了該次讀取,把轉接器切換到搭配的通訊協定,讀完立刻切回,而同時到期的幾個這類 PID 會共用一次切換,讓即時資料保持順暢。這個切換從不使用會把通訊協定存進轉接器記憶體的指令。若轉接器拒絕切換,這些 PID 在該次連線中會被略過,而不是被強迫執行。

我怎麼手動寫一個自訂 PID?

在目錄與連結都沒有它的時候,使用「訊號」的 + 選單中的「新建自訂訊號」。在服務回聲與識別碼被去除之後,回應的資料位元組依序命名為 A、B、C 等等,而數值永遠是對它們的公式。編輯器裡的「測試」區段會用「立即讀取」送出一次請求,並把原始回應和解碼後的數值並排顯示,所以位元組或縮放比例有誤,在你儲存之前就會顯現。

  • 簡潔 讀取一、兩或四個位元組(A、AB 或 ABCD),無號或有號,然後乘上比例再加上偏移。編輯器會替你寫好公式,而大多數公開發表的 PID 定義都符合這種形式。
  • 公式 對位元組的 Torque 風格運算式,可用 + - * / ^ 與括號,另有 SIGNED(A) 表示一個有號位元組、INT16(A:B) 表示有號 16 位元數值,以及 BIT(A:n) 表示單一位元。像 A * 0.75 - 40 這樣的公式,照一般公開的寫法輸入即可。
  • 單位 可以是真正的單位,也就是原廠文件註明的那個(°C、kPa、km/h 等等),WrenchTime 之後會處處依你自己的單位設定顯示;也可以是任何其他情況用的自由文字標籤。
  • 輪詢 快速、標準或慢速,與內建讀數採用相同的排程。轉接器的吞吐量有限:「訊號」清單可以測量你目前這組訊號的更新速度,並在轉接器跟不上時發出警告。

自訂讀數可以怎麼顯示?

每個 PID 都有一種顯示類型,所有顯示它的介面都使用同一種,所以讀數在手機上和在車裡看起來一樣。簡稱是放得進儀表卡片和 CarPlay 圖塊的名稱。

  • 儀表 一個圓環,帶有你自己的最小值與最大值,以及低側與高側可選的警告和危險色帶,所以變速箱溫度會在你決定的位置變成琥珀色,再變成紅色。
  • 數值 一個純數值,旁邊附上單位標籤,適用於沒有意義範圍的讀數。
  • 狀態 顯示開或關的指示燈。除非你指定某一個特定位元,否則任何非零值都算啟用,而「啟用時提醒」會在它亮起時把它染成危險色。
  • 對照表 把數值對應到標籤的列,所以排檔選擇器或模式位元組會顯示為 P、R、N、D 或 Eco,而不是一個數字。

自訂 PID 會顯示在哪裡?

標準讀數出現的每個地方,全都由同一個轉接器連線提供資料。在「設定」>「連線」下的「即時資料與狀態」裡,車輛的自訂訊號會接在內建儀表之後,自成一組。在 WrenchTime Live 儀表板上,訊號卡片可以顯示任何讀數,標準或自訂都行,而且可以出現不只一次,所以同一頁可以放兩個自訂讀數。在 CarPlay 上,自訂訊號是一個可以放進「即時」分頁版面的圖塊,採用與手機上相同的範圍與色帶繪製,進入危險區間時還會發出提醒。在行程的即時動態中,自訂訊號可以是鎖定畫面、動態島或 CarPlay 儀表板上的一張卡片。「訊號」中每個訊號的頁面都能開關 CarPlay、Live 與行程記錄;一個哪裡都不去的訊號,根本不會向車輛請求。CarPlay 屬於 WrenchTime Pro。

車機上 WrenchTime 的 CarPlay「即時」分頁,顯示一組 OBD-II 儀表圖塊,自訂 PID 可以放在其中成為一個圖塊

自訂讀數可以隨每趟行程記錄嗎?

可以,依訊號而定。在它的頁面上開啟「行程中記錄」,這個讀數就會隨該轉接器記錄的每趟駕駛一起保存,與內建遙測資料一同存入行程,並經過簡化以保持行程儲存的資料量不大,順序則依你的「訊號」清單。已記錄的自訂訊號,可以從行程圖表中選為獨立的通道,也可以從全螢幕路線的時間軸選單中選取,在那裡它會沿著駕駛路線繪出,回放時它的儀表也會跟著移動。這個開關預設是關閉的,因為每個記錄的讀數都會讓行程變大,而轉接器的吞吐量由它讀取的所有東西共用。和其他 OBD-II 遙測資料一樣,除了透過你自己的 iCloud,沒有任何東西會離開你的裝置。

我怎麼用 iPhone 讀取變速箱溫度?

需要一個支援的 OBD-II 轉接器和一個自訂訊號。變速箱溫度不是標準 OBD-II 參數,所以它的請求取決於廠牌,往往還取決於變速箱。對你的車型開啟「從目錄匯入」,搜尋 transmission,並在引擎運轉時測試出現的那幾列:回應了合理溫度的那一個,就是你要匯入的,儀表也已設定好。如果目錄沒有它,就找出你的車的服務、識別碼與公式,車迷論壇和其他 App 的 PID 清單通常會公布,然後新增一個自訂訊號,依清單所述選擇服務 22 或 21,把 ECU 標頭設為變速箱(7E1)或清單給的標頭,如果變速箱位於 29 位元模組上就選 29 位元定址,輸入公式,再用「立即讀取」檢查。為它的儀表設定警告與危險色帶,如果你想要每趟駕駛都有這個溫度,就開啟「行程中記錄」。如果模組沒有回應,那麼這輛車可能根本沒有透過 OBD 埠公開這個數值,這是任何 App 都沒辦法繞過的。

我能更改內建儀表的刻度嗎?

可以,而且免費。「訊號」中每個訊號的頁面,不論標準或自訂,都有一個「儀表刻度」區段,可以針對單一車輛覆寫它的儀表:最小值與最大值、一條警告色帶與一條危險色帶(兩側各自可選),而轉速表還有紅線。於是紅線較低的柴油車,或通常運轉得比較熱的冷卻水溫,就會畫在它該在的位置。覆寫是依車輛設定的,其他每輛車仍保持出廠數值,每個訊號或整輛車都可以重設。該讀數出現的每個地方,在「即時資料與狀態」、Live 儀表板與 CarPlay 上,都依據同一個刻度繪製。

自訂 PID 能改變我車上的任何東西嗎?

不能。請求建構器只接受服務 01、21 與 22,沒有別的,所以不論輸入什麼,清除故障碼、致動器測試、工作階段控制、安全存取、寫入、編碼與例行程序都無法從自訂訊號發送。每個位址欄位都會檢查長度是否完全正確、是否只含十六進位字元,不符合就拒絕而不是修剪,所以文字無法夾帶第二個指令到線路上。標頭在每次讀取後都會恢復,轉接器儲存的通訊協定也絕不會被改寫。目錄測試、從目錄匯入的訊號,以及從連結開啟的訊號,全都通過同樣的檢查,所以別人寫的定義不可能送出手動輸入的定義做不到的任何東西;需要更多權限的目錄訊號則會列為不支援。「故障碼」工具以它自己受保護的路徑清除故障碼,要在引擎熄火後並經過兩次確認,絕不會透過自訂訊號。如果你在找 iPhone 上 Torque Pro 風格的工具,我們的 iPhone 上的 Torque Pro一文比較了哪些可以沿用、哪些不行。

常見問題

iPhone 上有 Torque Pro 自訂 PID 的替代方案嗎?

WrenchTime 的自訂訊號在 iPhone 上涵蓋相同的範圍:服務 01、21 與 22、自訂 ECU 標頭,以及對回應位元組、帶有 SIGNED、INT16 與 BIT 函式的 Torque 風格公式,所以大多數公開的 Torque PID 定義都可以原樣輸入。多數時候你什麼都不用輸入:「從目錄匯入」會列出 OBDb 社群為你的車型整理的 PID,並先在你的車上測試。它需要一個低功耗藍牙 ELM327 轉接器或 OBDLink MX+,以及 WrenchTime Pro。它不會讀取 Torque 的 PID 檔案。

OBDb 目錄是什麼?

OBDb 是一個開放的社群專案,整理每個車型會回應的 OBD-II 訊號。WrenchTime 會抓取你所選的車型,在手機上把它的定義轉換成帶有公式、單位與儀表的自訂訊號,依你車輛的出廠年份篩選,並把每一個標為「已驗證」或「未驗證」。這些定義採用 CC BY-SA 4.0 授權,並在 App 中標明出處。

WrenchTime 怎麼知道目錄裡的哪些 PID 是我的車支援的?

它直接問車。「開始完整掃描」會向清單上每個支援的訊號請求一次,並把每一個標為「有回應」、「無回應」或「錯誤」,附上讀到的數值與花了多久。勾選有回應的一併匯入。請在引擎運轉時測試,因為有些模組只在那時才回應。

OBD-II PID 能更新 App 裡我車的里程嗎?

可以。具有里程表角色的訊號(目錄的里程表訊號在匯入時就會得到)會在每趟行程結束時與 GPS 比對,當兩者相差在 10% 以內,車輛的里程表就會對齊車輛的讀數,並在里程表歷史中留下一行標示「汽車,行程結束後」的紀錄。「行程結束後校準里程表」可以將它關閉。

WrenchTime 內建原廠 PID 清單嗎?

有。WrenchTime 訊號庫,也就是 WrenchTime 自己的自訂集合,隨 App 內建,含有 Alfa Romeo Giulia 與 Stelvio 以及 BMW 引擎的讀數。「從目錄匯入」會先列出它,接著是最接近你車型的 OBDb 社群目錄,然後是針對 OBDb 沒有涵蓋的車型所提供的 WiCAN 車輛設定檔。這些都沒有的東西,你就手動定義。

我能分享自訂 PID 嗎?

可以,以帶著完整定義的連結分享。打開或貼上它的人會先看到請求與解碼方式,可以測試,再選擇要放進哪輛車。

我能用 iPhone 讀取變速箱溫度嗎?

許多車輛可以,透過指向變速箱模組的自訂訊號:在目錄中尋找並在你的車上測試,或手動輸入你的廠牌的請求與公式。並非每輛車都會透過 OBD 埠公開這個數值。

自訂 PID 是免費的嗎?

自訂訊號、目錄與它的測試屬於 WrenchTime Pro。在「訊號」清單中測試你的車會回應哪些標準訊號,以及依車輛更改任何訊號的儀表刻度,都是免費的。

自訂 PID 會損壞或重新編程我的車嗎?

不會。只有讀取服務 01、21 與 22 能被送出,不論是測試、匯入或手寫的訊號都一樣。寫入、清除、致動器測試、安全存取、工作階段控制與例行程序,在設計上就會被拒絕。

自訂 PID 能在 CarPlay 上使用嗎?

可以。自訂訊號可以放成 CarPlay「即時」分頁中的一個圖塊,採用與手機上相同的儀表範圍與色帶繪製,也可以成為 CarPlay 儀表板上行程即時動態裡的一張卡片。CarPlay 屬於 WrenchTime Pro。

自訂 PID 會同步到我的其他裝置嗎?

會。自訂訊號與它的車輛一起儲存,並像車輛的其他資料一樣,透過你自己的 iCloud 同步。轉接器的配對本身則留在建立它的那支手機上。

WrenchTime App 圖示,橘色引擎與扳手

獻給寧可確切知道、也不願猜測的人。

可免費下載。一輛車、真正的功能、沒有廣告。你的車庫會感謝你。

在 App Store 下載 WrenchTime