カスタムPID・OBD-II・iPhone・CarPlay・WrenchTime Pro

車が自分から見せない値を読む、iPhoneのカスタムOBD-II PID

WrenchTimeのカスタムPIDは、アプリが最初から表示しない値のために、自分で定義する生のOBD-IIリクエストです。トランスミッションや油温、ブースト圧、メーカー独自のセンサー、スイッチなどがそれにあたります。サービス(01、21、22)、識別子、問い合わせるモジュールとそのアドレッシングを選び、応答のバイトをバイト幅、符号、スケールとオフセット、またはAからHまでのバイトにかける数式で数値に変え、リング計器、数値、ステータスランプ、対応表のどれで描くかを選びます。読み取った値は、ライブデータとステータス、WrenchTime Liveダッシュボードのカード、CarPlayのタイルに表示され、走行ごとに記録することもできます。一から始める必要はありません。「カタログからインポート」には、OBDbコミュニティがあなたの車にいちばん近いモデルについてすでにまとめた値が並び、誰かがリンクで共有したPIDは、すべての設定が入った状態で届きます。必要なのはBluetooth Low EnergyのELM327アダプターかOBDLink MX+と、WrenchTime Proです。読み取りしかできません。カスタムPIDに何を入力しても、車の中で何かを消去したり、書き込んだり、書き換えたり、動かしたりすることはできません。

iPhoneのWrenchTime Liveダッシュボード。OBD-IIアダプターから値を受け取るリング計器

カスタムPIDとは何で、いつ必要ですか?

WrenchTimeは、標準のモード01のパラメーターを自分で読み取ります。回転数、速度、負荷、スロットル、冷却水温と吸気温、燃料残量、電圧、吸気管圧力、燃料流量です(iPhone用OBD-IIアプリのガイドを参照)。車が知っている値の多くは、標準が要求していなかったり、メーカーがエンジン以外のモジュールに置いていたりするため、ここに含まれません。トランスミッションフルードの温度、エンジンオイルの温度、ターボのブースト、DPFのすす堆積量、ギアボックスの位置などは、たいていこの組に入ります。カスタムPIDは、そうした値を自分で問い合わせる方法です。コミュニティカタログから読み込むことも、誰かがリンクで共有したものを開くことも、車両の資料、オーナー向けのフォーラム、ほかのアプリで使っているリストから、リクエストと数式を自分で持ち寄ることもできます。ツールは車両タブの、車両ツールを開く心電図マークのボタンの先にあり、PIDはそれぞれ一台の車両に属します。

自分の車のPIDはどこで見つかりますか?

まずはコミュニティカタログです。「新規PID」の隣にある「カタログからインポート」を押すと、各モデルが答える信号をまとめたオープンなコミュニティプロジェクト、OBDbのカタログが開きます。最初に車両のメーカーが選ばれているので、自分の車にいちばん近いモデルを選ぶと信号が一覧になり、ワンタップで、あとから編集もできるふつうのカスタムPIDとして読み込めます。車両の詳細でモデルイヤーを設定しておくと、一覧はその年式に絞り込まれ、信号ごとに確認済みか未確認かが示されます。カタログがそのモデルの別の年式に分類している信号は、年式のデータが不完全なため、分けて表示されます。アプリがまだ読めない信号は、隠さずに非対応として表示されます。カタログは開いたときに取得され、アプリには同梱されず、オフラインのときのためにコピーが保存されます。定義のライセンスはCC BY-SA 4.0で、カタログ画面にクレジットが表示されます。

カスタムPIDをほかの人と共有できますか?

できます。リンクで共有します。保存したPIDを開いて共有すると、リンクにはリクエスト、デコード、表示まで定義のすべてが入り、あいだにサーバーは挟まりません。リンクを開いた人、またはPIDの一覧で「リンクを貼り付け」を使った人は、何かが読み込まれる前にリクエストとデコードを確認し、自分のどの車両に追加するかを選びます。表示のみで共有された車両には追加できません。ほかの人からのリンクも、ほかのカスタムPIDと同じく読み取り専用のリクエストを送るものですが、読み込むのは信頼できる相手のものだけにしてください。動くPIDを車のクラブやモデルのフォーラムで回すのに、いちばん手軽な方法です。

カスタムPIDはどんなリクエストを送れますか?

読み取りのサービス三つだけで、ほかには何も送れません。送り先は選んだモジュールで、そのモジュールが使う種類のCANアドレッシングを使います。

  • サービス01、21、22 01は標準の現在データのサービス、21は一バイトの識別子を使う旧来のメーカー独自の読み取り、22は二バイトの識別子を使うUDSのデータ識別子読み取りで、最近のメーカー独自の値の多くはここにあります。
  • ECUヘッダー 自動(7DF、すべてのOBD-IIモジュールが聞いている機能リクエスト)、エンジン(7E0)、トランスミッション(7E1)、またはほかのモジュール用の三桁の任意ヘッダー。ヘッダーはそのリクエストの間だけ設定され、直後に7DFへ戻されます。任意のヘッダーを持つPIDは、読み取りのたびにアダプターとの往復が何度も増えるため、低速の段階(およそ八秒に一回)で問い合わせます。
  • 標準、拡張、29-bitのアドレッシング 標準は、ほとんどの車と同じ11-bitのCAN識別子を使います。拡張は、先頭にターゲットバイトを要求するゲートウェイの奥にあるモジュール向けで、応答IDと、それに対応するアダプターが必要です。29-bitは、診断に29-bitの識別子を使う車用です。リクエストが18DAで始まる場合は、応答IDがリクエストから導かれるので空のままで構いません。
  • もう一方の幅を、一回だけ借りる 29-bitのPIDは、OBDポートが11-bitで答える車でも、その逆でも働きます。WrenchTimeはその読み取りのためにアダプターを相手側のプロトコルへ切り替え、すぐに戻します。同じタイミングで期限が来る複数のPIDは一回の切り替えを共有するので、ライブデータが滑らかに保たれます。切り替えには、プロトコルをアダプターの記憶に保存するコマンドを決して使いません。切り替えを拒むアダプターでは、そのPIDを無理に動かさず、そのセッションでは読み飛ばします。

応答を数値にするには?

サービスのエコーと識別子を取り除くと、応答のデータバイトはA、B、Cと、Hまで名前が付きます。読み方は二通りから選びます。エディターの「テスト」セクションでは、「今すぐ読み取る」でリクエストを一度送り、生の応答とデコードした値を並べて表示するので、バイトやスケールの間違いは保存する前にわかります。

  • シンプル 一、二、または四バイト(A、AB、ABCD)を、符号なし、または8-bit・16-bitの符号つきで読み、スケールをかけてオフセットを足します。公開されているPIDの定義の多くは、この形に収まります。
  • 数式 AからHまでのバイトにかける、Torque形式の式です。+ - * / ^ とかっこが使え、一つの符号つきバイトにはSIGNED(A)、符号つき16-bitの値にはINT16(A:B)、一つのビットにはBIT(A:n)が使えます。「A * 0.75 - 40」のような式は、よく公開されているとおりの書き方で入力できます。
  • 単位の換算 任意で、デコードのあとに適用します。摂氏と華氏の相互、kPaまたはbarとpsiの相互、km/hとmphの相互です。単位のラベルは自由入力です。メーカーが値をどの単位で資料に書いているかを、アプリは知りようがないからです。
  • 問い合わせの段階 高速(およそ毎秒三回)、標準(およそ毎秒一回)、低速(およそ八秒に一回)から選び、組み込みの読み取りと同じスケジュールで動きます。アダプターの処理能力には限りがあるので、ライブデータがもたつくときは、PIDの段階を下げるか、どれかを外してください。

カスタムの値はどう表示できますか?

PIDにはそれぞれ表示タイプがあり、その値を出すすべての画面が同じものを使うので、スマートフォンでも車内でも同じ見た目になります。短い名前は、計器のカードとCarPlayのタイルに収まるものです。

  • 計器 自分で決めた最小値と最大値を持つリング。低い側と高い側に、注意と危険の帯も任意で設定できるので、トランスミッション温度が、あなたの決めた位置で琥珀色、そして赤に変わります。
  • 数値 単位のラベルを添えた、そのままの値。意味のある範囲を持たない値向けです。
  • ステータス オンかオフを示すランプ。特定のビットを選ばない限り、ゼロ以外の値はアクティブと数えます。「アクティブ時に警告」をオンにすると、点灯したとき危険の色に染まります。
  • 対応表 値をラベルに対応づける行です。ギアセレクターやモードのバイトが、数字ではなくP、R、N、D、Ecoと読めます。

カスタムPIDはどこに表示されますか?

三か所です。どれも同じアダプターのセッションから値を受け取ります。設定の「接続」にあるライブデータとステータスでは、その車両の有効なカスタムPIDが、組み込みの計器のあとに専用のセクションとして並びます。WrenchTime Liveダッシュボードでは、カスタムPIDのカードをほかの計器と同じように追加でき、複数置ける唯一のカードなので、二つのカスタムの値を同じページに並べられます。車両が複数あるときは、ウィジェットのギャラリーでどの車両のカスタムPIDを一覧にするか選べます。別の車両のカードには、それがどの車両で読むかが書かれ、ダッシュボードがその車両で開いたときに動き出します。PIDはそれぞれ自分の車両のアダプターを通して読まれるからです。CarPlayでは、カスタムPIDは、設定のCarPlayからLiveタブのレイアウトに置けるタイルで、iPhoneと同じ範囲と帯で描かれます。ステータスのPIDは、CarPlayでも色のついたタイルのままで、運転中に警告を出すことはありません。CarPlayはWrenchTime Proの一部です。

車載ディスプレイのWrenchTime CarPlay Liveタブ。OBD-II計器タイルのグリッドで、カスタムPIDもタイルとして置ける

カスタムの値を走行ごとに記録できますか?

はい、PIDごとにできます。「走行中に記録」をオンにすると、そのアダプターが記録する走行ごとに値が残り、組み込みのテレメトリーと並んで走行と一緒に保存されます。走行の保存データが膨らまないよう、簡略化されます。記録したカスタムPIDは、走行のグラフで独立したチャンネルとして選べるほか、全画面ルートのタイムラインメニューからも選べ、走行に沿って描かれ、リプレイ中は計器が動きます。スイッチは初期状態でオフです。記録する値が増えるほど走行のデータが大きくなり、アダプターの処理能力はほかの読み取りと分け合っているからです。一回の走行に記録できるカスタムの値は、最大十六個です。OBD-IIのほかのテレメトリーと同じく、あなた自身のiCloudを通る場合を除き、何もあなたの端末の外へ出ません。

iPhoneでトランスミッション温度を読むには?

対応するOBD-IIアダプターと、カスタムPIDで読めます。トランスミッション温度は標準のOBD-IIパラメーターではないため、リクエストはメーカーによって、多くはギアボックスによっても異なります。まず「カタログからインポート」を見てください。コミュニティがあなたのモデルについてまとめていれば、そこから読み込めます。なければ、お使いの車のサービス、識別子、数式を探します。愛好家のフォーラムや、ほかのアプリ向けのPIDのリストに、たいてい載っています。そのうえでWrenchTimeでカスタムPIDを追加し、リストにあるとおり22か21を選び、ECUヘッダーをトランスミッション(7E1)かリストが示すヘッダーにし、ギアボックスが29-bitのモジュール上にあるなら29-bitのアドレッシングを選び、数式を入力します。「今すぐ読み取る」で妥当な温度が返るか確かめ、計器で注意と危険の帯を設定し、走行ごとの温度が欲しければ「走行中に記録」をオンにします。モジュールが答えないときは、その車がOBDポートでそもそもその値を公開していない可能性があり、それはどのアプリにも回避できません。

組み込みの計器のスケールは変えられますか?

はい、しかもこのツールは無料です。同じ車両ツールの一覧にある「計器のスケール」では、組み込みのOBD-II読み取りの計器を、一台の車両についてだけ上書きできます。最小値と最大値、注意の帯と危険の帯(どちらの側も任意)、タコメーターならレッドゾーンです。低い回転数でレッドゾーンに入るディーゼル車や、ふだんから水温が高めに出る車でも、あるべき位置に描かれます。上書きは車両ごとで、ほかの車両は出荷時の数字のままです。チャンネルごとにも、車両全体でも、リセットできます。ライブデータとステータス、Liveダッシュボード、CarPlayなど、その値が出るすべての場所が同じスケールで描かれます。カスタムPIDには必要ありません。計器の範囲はPIDそのものに設定するからです。

カスタムPIDで車の何かを変えてしまうことはありますか?

いいえ。リクエストを組み立てる部分はサービス01、21、22しか受け付けないので、コードの消去、アクチュエーターのテスト、セッション制御、セキュリティアクセス、書き込み、コーディング、ルーチンは、何を入力してもカスタムPIDから送れません。アドレスの欄はすべて、長さが正確で16進の文字だけであるかを検査し、切り詰めずに拒否するので、文字列に二つめのコマンドを紛れ込ませることもできません。ヘッダーは読み取りのたびに元へ戻し、アダプターに保存されたプロトコルは決して書き換えません。故障コードのツールは、カスタムPIDではなく専用の保護された経路で、エンジンを止めた状態で、二度の確認のあとにコードを消去します。カタログから読み込んだPIDやリンクから開いたPIDも同じ検査を通るので、ほかの人が書いた定義でも、手で入力した定義で送れないものは何も送れません。iPhone向けのTorque Pro系のツールをお探しなら、iPhoneでTorque Proの記事で、引き継げるものとそうでないものを比べています。

よくある質問

iPhoneで使えるTorque ProのカスタムPIDの代わりはありますか?

WrenchTimeのカスタムPIDは、iPhoneで同じ範囲をカバーします。サービス01、21、22、任意のECUヘッダー、SIGNED、INT16、BITの関数を備えたAからHまでのバイトにかけるTorque形式の数式なので、公開されているTorqueのPID定義の多くは、そのまま入力できます。必要なのはBluetooth Low EnergyのELM327アダプターかOBDLink MX+と、WrenchTime Proです。TorqueのPIDファイルは読み込めませんが、PIDはOBDbコミュニティカタログから読み込んだり、誰かが共有したリンクから開いたりでき、それ以外は手で入力します。

WrenchTimeにはメーカー別のPIDのリストが付いていますか?

同梱はしていませんが、読み込めます。「カタログからインポート」には、OBDbコミュニティがあなたの車にいちばん近いモデルについてまとめたPIDが、モデルイヤーで絞り込まれ、確認済みか未確認かの印付きで並びます。カタログにないものは車両の資料や公開されているリストから定義し、「今すぐ読み取る」のテストで生の応答を見て、保存する前に定義を確かめられます。

カスタムPIDは共有できますか?

できます。定義のすべてを載せたリンクで共有します。開いたり貼り付けたりした人は、まずリクエストとデコードを確認し、それから追加先の車両を選びます。

iPhoneでトランスミッション温度は読めますか?

多くの車で、トランスミッションのモジュールを指したカスタムPIDを使えば読めます。お使いのメーカーのリクエストと数式がわかっていれば、の話です。すべての車がOBDポートでその値を公開しているわけではありません。

カスタムPIDは無料ですか?

カスタムPIDはWrenchTime Proの機能です。組み込みの計器の範囲、帯、レッドゾーンを車両ごとに変える「計器のスケール」のツールは無料です。

カスタムPIDで車を傷めたり、書き換えたりすることはありますか?

いいえ。送れるのは読み取りのサービス01、21、22だけです。書き込み、消去、アクチュエーターのテスト、セキュリティアクセス、セッション制御、ルーチンは、構造上拒否されます。

カスタムPIDはCarPlayでも使えますか?

はい。カスタムPIDは、CarPlayのLiveタブにタイルとして置け、iPhoneと同じ計器の範囲と帯で描かれます。CarPlayはWrenchTime Proの一部です。

カスタムPIDはほかの端末にも同期されますか?

はい。カスタムPIDは車両と一緒に保存され、その車両のほかのデータと同じく、あなた自身のiCloudを通して同期されます。アダプターとの紐づけ自体は、それを行ったiPhoneに残ります。

WrenchTimeのアプリアイコン。オレンジのエンジンとレンチ

推測ではなく、把握したい人のために。

ダウンロードは無料。車両1台、本物の機能、広告なし。あなたのガレージがきっと喜びます。

App StoreでWrenchTimeをダウンロード