コーディング&アダプテーション
コーディングとアダプテーションを使うと、車両の機能を有効にしたり、ECUのパラメーターを変更したり、サービスインターバルをリセットしたり、搭載リストを管理したりできます。
これらの機能は「書き込み」を伴います。ECUの設定に直接手を加え、車両のパラメーターを変更するため、内容を理解している場合にのみ使用し、事前に必ず元の値を控えておいてください。多くのECUでは、あらかじめセキュリティアクセスまたはSFDのロック解除が必要です。
コーディング

ECUのコーディングは、機能の有効化・無効化や、異なる仕様間の切り替えに使用します。車両モデルにはさまざまな装備オプションが用意されており、その内容は市場、モデル、標準装備によって異なります。その際、ハードウェアは同じものが搭載されていることが多く、実際にどの機能が有効になるかは、対応するECUのコーディングによって初めて決まります。
典型的な例を挙げます。工場出荷時にハロゲンヘッドライトが装備されている車両でも、ハードウェアはキセノンやLEDに対応していることがあります。どのタイプのヘッドライトが搭載されていて、ライト制御がどのように動作するかは、ECUのコーディングによって決まります。そのほか、よく行われるコーディング変更には次のようなものがあります。
- デイタイムランニングライト機能の有効化・無効化
- セントラルロックの動作(例:走行時の自動ロック)
- 後退時のドアミラー自動下向き機能
- コンフォートウインカーの点滅回数の設定
- パワーウインドウのクロージングアシスト機能の調整
⚠️ 注意:コーディングを誤ると、車両の機能が正常に動作しなくなったり、ECUにエラーが記録されたりすることがあります。必要なときに元に戻せるよう、変更する前に必ず現在のコーディング値を控えておいてください。
VAGグループでは、2種類のコーディング方式が使われています。どちらの方式が使われるかは、ECUの実装だけで決まります。
ショートコーディング
ショートコーディングでは、シンプルな数値コード(3桁、5桁、または7桁の10進数)でECUの構成を定義します。このコードの各桁または桁のグループが、それぞれ特定の機能のまとまりを表します。
- プロトコル:KWP1281とKWP2000のみ。
- 種類と値の範囲:ECUに応じて、4種類のうちいずれかが使用されます。CarPortは種類を自動的に判別し、入力できる範囲をそれに合わせて制限します。
| 種類 | 値の範囲 | 桁数 |
|---|---|---|
| 7ビット | 0–127 | 3桁 |
| 15ビット | 0–32767 | 5桁 |
| 20ビット | 0–1048575 | 7桁 |
| 23ビット | 0–8388607 | 7桁 |
- 表示:記述データがある場合、CarPortは各桁または桁のグループの意味をわかりやすく表示します(例:「桁1:ヘッドライトの種類(0 = ハロゲン、1 = キセノン)」)。記述データがない場合は、数値コードだけが説明なしで表示されます。
手順(ショートコーディング):
- CarPortが、ECUに現在保存されているコーディング値を表示します。この値を控えておいてください。
- 記述データがある場合は、表示される選択欄で各桁を変更できます。
- または、新しいコーディング値を数値で
新しいコーディング:入力欄に直接入力します。 書き込み...をクリックして、コーディングをECUに転送します。
ロングコーディング
ロングコーディングでは、ECUの構成をはるかに細かく制御できます。1つの数値の代わりに16進数のバイト列を使用し、その各ビットが特定の機能やパラメーターを表します。
- プロトコル:KWP2000とUDS。
- 表示:コーディングはバイトの並びとして表示されます(例:
0F 3A 00 12 8B)。各バイトは8ビットで構成され、ビットごとにセットまたはクリアできます。
記述データの有無による表示の違い:
ECUの記述データがある場合、CarPortは各ビットについてわかりやすい説明をチェックボックス付きで表示します(例:「デイタイムランニングライト有効」「後退時ミラー下向き」)。チェックを入れたり外したりするだけで、目的の機能を設定できます。
記述データがない場合、CarPortはバイト番号とビット番号による汎用表示(例:「バイト3、ビット5」)を行います。この場合、各ビットの意味を外部の情報源(例:車両関連のフォーラム、整備資料)で確認しておく必要があります。ただし、該当する情報があれば、ビットを的確に変更できます。
手順(ロングコーディング):
- CarPortがECUから現在のコーディングを読み取って表示します。バックアップとして、表示された16進数値を控えておいてください。コーディングは診断レポートでも確認できます。
- 選択欄(記述データがある場合)で目的の機能を有効または無効にするか、チェックボックスでビット値を変更します。または、
新しいコーディング:入力欄にバイト値を直接入力します。 書き込み...をクリックして、新しいコーディングをECUに転送します。
💡 ヒント:バイト表示では、各バイトを16進数値として直接編集できます。チェックボックス表示は自動的に更新され、その逆も同様です。2つの表示は常に同期しています。
コーディングとセキュリティアクセス
一部のECUでは、新しいコーディングを書き込む前にセキュリティアクセスが必要です。その場合、CarPortは転送の前に、必要なアクセスコードの入力を求めます。SFD(車両診断保護)を採用した新しい車両では、さらに暗号技術による保護機構によって、コーディングの変更が制限される場合があります。
アダプテーション

アダプテーションでは、ECUの設定可能なパラメーターを変更できます。機能のオン/オフを切り替えるコーディングとは異なり、アダプテーションは既存の機能内の値を校正したり調整したりするために使用します。
アダプテーションの代表的な用途は次のとおりです。
- 部品交換後のキャリブレーション:インジェクターを交換した後に、インジェクター補正値を登録する場合など。
- 目標値の調整:アイドル回転数、レイン/ライトセンサーの光感度、パーキングエイドの感度など。
- パラメーターを伴う機能の有効化:デイタイムランニングライトの減光値、カミングホームの点灯時間など。
- サービスカウンターのリセット:オイル交換後にサービスインターバル表示をリセットする場合など(サービスアシスタントを使うとより簡単です)。
⚠️ 注意:アダプテーションはECUの動作を変更します。誤った値を設定すると、機能の不具合や安全に関わる誤作動につながるおそれがあります。必要なときに元に戻せるよう、変更する前に必ず現在の元の値を控えておいてください。
アダプテーション機能の手順と表示は、使用する診断プロトコルによって大きく異なります。
KWP1281 / KWP2000でのアダプテーション
旧来のプロトコルであるKWP1281とKWP2000では、アダプテーションのパラメーターは番号付きのチャンネルにまとめられています。
- KWP1281:チャンネル0~100
- KWP2000:チャンネル0~255
各チャンネルには1つの値が含まれます。通常は16ビット値(範囲0~65535)または8ビット値(範囲0~255)です。特殊な形式としてロングアダプテーションがあり、ASCIIのテキスト値が登録されます(例:文字列形式のインジェクター補正値)。
チャンネルの表示:
CarPortにそのECUの記述データがある場合、チャンネルはわかりやすい名称で表示されます(例:「アイドル回転数」「スロットルバルブアダプテーション」)。さらに、生データは単位付きの物理値に換算されるか(例:0~100%や-50~+50°C)、選択リストとして表示されます(例:「0 = オフ、1 = オン」)。
記述データがない場合は、チャンネル番号による汎用的な表示(例:「アダプテーション42」)となり、未加工の値がそのまま表示されます。利用可能な場合はラベルファイル情報を使用チェックボックスで記述データの使用をオン/オフできるため、生の値に直接アクセスすることも可能です。
手順:
- リストから目的のアダプテーションチャンネルを選択するか、チャンネル番号を手動で入力します。
- ECUに現在保存されている値が表示されます。変更する前にこの値を控えておいてください。
- 入力欄に新しい値を入力します。
テストをクリックして、値をテストします。- 値はECUの揮発性メモリに取り込まれます。ECUは新しい値をすぐに使用しますが、次回の再起動時にその値は失われます。
- 値が無効な場合や許容範囲外の場合は、ECUからエラーメッセージが返されます。
- 期待どおりの動作になるかどうかを確認します。
保存...をクリックして、値をECUに恒久的に保存します。
💡 ヒント:2段階のプロセス(テスト → 保存)は、安全機構の役割を果たします。テストだけを使っている間は、イグニッションをいったんオフにして再びオンにすれば、いつでも元の値に戻せます。変更が恒久的になるのは、保存...を実行したときだけです。
UDSでのアダプテーション
UDSプロトコルを使用する比較的新しいECUでは、アダプテーションの仕組みが根本的に異なります。
- チャンネル番号ではなく識別子:アダプテーションのパラメーターは、16ビットの識別子(Identifier)で指定されます。わかりやすい名称との対応付けは、ODX記述データ(ASAMデータセット)によってのみ行われます。
- 複雑なデータ構造:UDSのアダプテーション値は、単純な数値のこともあれば、ビットフィールド、文字列、複数の要素からなる構造のこともあります。
- 直接保存:KWP1281/KWP2000とは異なり、UDSには独立したテスト手順がありません。変更は転送した時点でただちに恒久的にECUに保存されます。
- 記述データが必須:適切なODXデータがなければ、識別子とその値を解釈できません。そのためCarPortでは、各ECUに対応する正しい記述データが必ず必要です。
⚠️ 注意:UDSのECUでは変更がただちに恒久的に保存されるため、新しい値をまず一時的にテストすることはできません。転送する前に、入力した値が正しいことを必ず確認してください。
サービスアシスタント

フォルクスワーゲングループの車両には、メンテナンスの時期(例:オイル交換、点検)をドライバーに知らせるサービスインターバル表示が備わっています。このインターバルデータは、メーターパネルにアダプテーションチャンネルとして保存されており、通常は次回のサービスまでの残り距離(km)と残り日数が含まれます。
メンテナンスを実施した後は、サービスインターバル表示が正しく機能するよう、これらのカウンターを手動でリセットする必要があります。技術的には、メーターパネルのアダプテーション機能を使って、該当するチャンネルを1つずつ適切な値に設定します。
CarPortのサービスアシスタントを使うと、この作業が大幅に簡単になります。サービスインターバルに関連するすべてのパラメーターが見やすい画面にまとめて表示され、数回クリックするだけでリセットできます。個々のアダプテーションチャンネルやその目標値を知っておく必要はありません。
機能:
- 見やすい表示:サービスインターバルに関連するすべてのアダプテーションチャンネルが、現在の値と新しい値とともに表示されます。
- 定義済みジョブ:
ジョブエリアには、よくあるサービス作業が定義済みの選択グループとして用意されています(例:オイル交換インターバルのみリセット、オイル交換と点検の両方をリセット)。ジョブを選択すると、関連するアダプテーションチャンネルが正しい目標値とともに自動的にマークされます。 - 変更のプレビュー:選択したジョブによって値が変更されるチャンネルは、すべて黄色で強調表示されます。そのため、転送する前にどのパラメーターが変更されるかを正確に確認できます。
手順:
- メニューの
ツール→サービスアシスタントを開始、またはツールバーの同名のボタンからサービスアシスタントを起動します。 ジョブエリアで、目的のサービスジョブ(例:オイル交換、点検、またはその両方)を選択します。- 一覧で黄色く強調表示された変更内容を確認します。必要に応じて、個々の値を手動で調整できます。
変更を適用...をクリックして、変更をECUに転送します。- メーターパネルに新しい値を反映させ、サービスインターバル表示を更新するため、イグニッションをいったんオフにしてから再びオンにします。
💡 ヒント:お使いの車両でサービスアシスタントに定義済みジョブが表示されない場合は、メーターパネルのアダプテーション機能を使って、サービスインターバルを手動でリセットすることもできます。
搭載リスト

搭載リストは、診断ゲートウェイ(アドレス19)に保存されている、車両に搭載されたすべてのECUの一覧です。車両にどの電子システムが存在するかを示す、中心的な参照情報として機能します。
ℹ️ 注:搭載リストは、CANバス診断ゲートウェイを備えた車両でのみ利用できます。K-Lineのみで診断する旧型車にはゲートウェイがないため、搭載リストもありません。
搭載リストの役割:
CarPortは、搭載リストをいくつかの場面で利用します。
- ECU選択:
搭載済みタブでは、CarPortは搭載リストに搭載済みとして登録されているECUだけを表示します。 - AutoScan:自動故障スキャンでは、搭載リストに記載されたECUだけを対象に問い合わせるため、スキャンが大幅に高速化されます。
搭載リストの変更が必要なケース
通常、搭載リストは実際の車両装備と一致しています。ただし、手動での変更が必要になる場合もあります。
- コンポーネントの後付け:専用ECU付きのトレーラーヒッチ、パーキングヒーターやリアビューカメラの後付けなど。
- ECUの取り外し:不要になったシステムを取り外した場合など。
- 登録の欠落や誤り:まれに、工場出荷時の搭載リストが不完全だったり、誤っていたりすることがあります。
ECUが物理的に搭載されていても搭載リストに登録されていない場合、そのECUはAutoScanでスキップされ、ECU選択の搭載済みにも表示されません。逆に、存在しないECUが登録されていると、AutoScanで接続エラーが発生します。
ℹ️ 重要:実際の装備と一致しない搭載リストは、故障メモリへのエントリの原因になることがよくあります。リストに登録されているECUが物理的に存在しない場合(未搭載)、ゲートウェイは通信エラーを検出します。逆に、搭載されているECUがリストに登録されていない場合(追加搭載)、期待されるデータが届かないため、関連するシステムがエラーを出すことがあります。そのため、車両の装備が変わったときは、必ず搭載リストも合わせて変更してください。
手順:
- 接続したゲートウェイECU(アドレス19)で、搭載リストタブを開きます。
- CarPortに、考えられるすべてのECUの現在のリストが表示されます。搭載済みとして登録されているシステムには、チェックが付いています。
- 追加するECUにはチェックを入れ、搭載されなくなったECUからはチェックを外します。
書き込み...をクリックして、変更をゲートウェイに恒久的に保存します。
💡 ヒント:保存する前に変更を破棄したい場合は、リセットをクリックすると、最初に読み取ったリストに戻ります。これは、まだ保存していない場合にのみ可能です。
診断モード(UDS)
UDSプロトコルを使用するECUでは、診断通信はさまざまな診断セッション(Diagnostic Session)で行われます。各セッションでは、ECUが受け付けるコマンドと、使用可能な機能が定められています。CarPortは接続時に適切なモードへ自動的に切り替えますが、状況によってはモードを手動で切り替える必要があります。
診断モードの切り替え:
UDS接続が確立されているときは、ECUウィンドウの右上に診断モードのドロップダウンリストがあります。次のモードを選択できます。
| モード | 説明 |
|---|---|
VW診断モード |
VAG固有の診断のための標準モードです。接続を確立するたびにCarPortが自動的に設定します。通常の診断機能(故障メモリ、測定値、コーディング、アダプテーション、基本設定など)をすべて使用できます。 |
OBD診断モード |
汎用のOBD-2診断とVAG固有の診断の両方で使用される、機能が制限された診断モードです。読み取り系の機能(故障メモリ、測定値、ECU情報)は使用できますが、書き込みを伴う操作(コーディング、アダプテーション、基本設定、出力テスト)はできません。 |
プログラミングモード |
ECUソフトウェアを書き換える(フラッシュする)ためのプログラミングモードです。ファームウェアのアップデートに必要です。 |
エンドオブラインモード (EOL) |
生産ラインの最終工程で行うエンドオブライン検査用の特殊なモードです。工場出荷時の設定機能にアクセスできます。 |
開発モード |
拡張診断機能を備えた開発モードで、通常は車両開発でのみ使用されます。 |
手動でのモード切り替えが必要なケース
CarPortが自動的にVW診断モードを設定するため、通常は手動で切り替える必要はありません。ただし、特定の特殊な機能(特に一部のコーディングオプション)では、エンドオブラインモード (EOL)または開発モードへの切り替えが必要です。
ℹ️ 注:Secure Gateway(SFD/UNECE)を搭載した車両では、OBD診断モードしか使用できません。ゲートウェイ認証が行われていない限り、ゲートウェイは他の診断セッションへの切り替えをブロックします。