{
  "schema": 1,
  "meta": {
    "name": "1996 Ford Mustang GT 4.6L SOHC 2-valve",
    "make": "Ford",
    "model": "Mustang GT",
    "years": "1996",
    "engine": "4.6L SOHC 2-valve modular V8 (EEC-V, MAF-metered)",
    "author": "OBDash project",
    "version": "0.1.0",
    "protocol": "SAE J1850 PWM",
    "notes": "EEC-V PCM on SAE J1850 PWM (41.6 kbaud, OBD-II pins 2 & 10). MAF-metered V8 with dual exhaust: four heated O2 sensors (B1S1/B1S2/B2S1/B2S2) and two fuel-trim banks. Bank 1 = passenger side (cyl #1). Standard SAE J1979 Mode-01 backbone; no verifiable mode-22 enhanced PIDs published for this early EEC-V generation."
  },
  "presets": {
    "basic": [
      "RPM",
      "VSS",
      "ECT",
      "MAF",
      "TPS",
      "LOAD",
      "TIMING",
      "IAT",
      "BATT"
    ],
    "fuel": [
      "STFT1",
      "LTFT1",
      "STFT2",
      "LTFT2",
      "O2_B1S1",
      "O2_B1S2",
      "O2_B2S1",
      "O2_B2S2"
    ]
  },
  "pids": [
    {
      "key": "LOAD",
      "name": "Calculated Engine Load",
      "mode": "01",
      "pid": "04",
      "nbytes": 1,
      "formula": "A*100/255",
      "unit": "%",
      "group": "engine",
      "vmin": 0,
      "vmax": 100,
      "round": 0,
      "confidence": "verified"
    },
    {
      "key": "ECT",
      "name": "Engine Coolant Temp",
      "mode": "01",
      "pid": "05",
      "nbytes": 1,
      "formula": "A-40",
      "unit": "C",
      "group": "engine",
      "vmin": -40,
      "vmax": 120,
      "round": 0,
      "confidence": "verified"
    },
    {
      "key": "STFT1",
      "name": "Short Term Fuel Trim B1",
      "mode": "01",
      "pid": "06",
      "nbytes": 1,
      "formula": "A*100/128-100",
      "unit": "%",
      "group": "fuel",
      "vmin": -100,
      "vmax": 99.2,
      "round": 1,
      "confidence": "verified",
      "notes": "Bank 1 = passenger side (cyl #1)"
    },
    {
      "key": "LTFT1",
      "name": "Long Term Fuel Trim B1",
      "mode": "01",
      "pid": "07",
      "nbytes": 1,
      "formula": "A*100/128-100",
      "unit": "%",
      "group": "fuel",
      "vmin": -100,
      "vmax": 99.2,
      "round": 1,
      "confidence": "verified",
      "notes": "Bank 1 = passenger side (cyl #1)"
    },
    {
      "key": "STFT2",
      "name": "Short Term Fuel Trim B2",
      "mode": "01",
      "pid": "08",
      "nbytes": 1,
      "formula": "A*100/128-100",
      "unit": "%",
      "group": "fuel",
      "vmin": -100,
      "vmax": 99.2,
      "round": 1,
      "confidence": "verified",
      "notes": "Bank 2 = driver side"
    },
    {
      "key": "LTFT2",
      "name": "Long Term Fuel Trim B2",
      "mode": "01",
      "pid": "09",
      "nbytes": 1,
      "formula": "A*100/128-100",
      "unit": "%",
      "group": "fuel",
      "vmin": -100,
      "vmax": 99.2,
      "round": 1,
      "confidence": "verified",
      "notes": "Bank 2 = driver side"
    },
    {
      "key": "RPM",
      "name": "Engine RPM",
      "mode": "01",
      "pid": "0C",
      "nbytes": 2,
      "formula": "(A*256+B)/4",
      "unit": "rpm",
      "group": "engine",
      "vmin": 0,
      "vmax": 7000,
      "round": 0,
      "confidence": "verified"
    },
    {
      "key": "VSS",
      "name": "Vehicle Speed",
      "mode": "01",
      "pid": "0D",
      "nbytes": 1,
      "formula": "A",
      "unit": "km/h",
      "group": "driveline",
      "vmin": 0,
      "vmax": 255,
      "round": 0,
      "confidence": "verified"
    },
    {
      "key": "TIMING",
      "name": "Timing Advance",
      "mode": "01",
      "pid": "0E",
      "nbytes": 1,
      "formula": "A/2-64",
      "unit": "deg",
      "group": "engine",
      "vmin": -64,
      "vmax": 63.5,
      "round": 1,
      "confidence": "verified"
    },
    {
      "key": "IAT",
      "name": "Intake Air Temp",
      "mode": "01",
      "pid": "0F",
      "nbytes": 1,
      "formula": "A-40",
      "unit": "C",
      "group": "air",
      "vmin": -40,
      "vmax": 120,
      "round": 0,
      "confidence": "verified",
      "notes": "Ford ACT sensor"
    },
    {
      "key": "MAF",
      "name": "Mass Air Flow",
      "mode": "01",
      "pid": "10",
      "nbytes": 2,
      "formula": "(A*256+B)/100",
      "unit": "g/s",
      "group": "air",
      "vmin": 0,
      "vmax": 300,
      "round": 2,
      "confidence": "verified",
      "notes": "4.6L is MAF-metered; MAP PID 010B not reported"
    },
    {
      "key": "TPS",
      "name": "Throttle Position",
      "mode": "01",
      "pid": "11",
      "nbytes": 1,
      "formula": "A*100/255",
      "unit": "%",
      "group": "air",
      "vmin": 0,
      "vmax": 100,
      "round": 0,
      "confidence": "verified"
    },
    {
      "key": "O2_B1S1",
      "name": "O2 Bank 1 Sensor 1",
      "mode": "01",
      "pid": "14",
      "nbytes": 2,
      "formula": "A/200",
      "unit": "V",
      "group": "fuel",
      "vmin": 0,
      "vmax": 1.275,
      "round": 2,
      "confidence": "verified",
      "notes": "Pre-cat, bank 1; byte B is STFT trim"
    },
    {
      "key": "O2_B1S2",
      "name": "O2 Bank 1 Sensor 2",
      "mode": "01",
      "pid": "15",
      "nbytes": 2,
      "formula": "A/200",
      "unit": "V",
      "group": "fuel",
      "vmin": 0,
      "vmax": 1.275,
      "round": 2,
      "confidence": "verified",
      "notes": "Post-cat, bank 1"
    },
    {
      "key": "O2_B2S1",
      "name": "O2 Bank 2 Sensor 1",
      "mode": "01",
      "pid": "18",
      "nbytes": 2,
      "formula": "A/200",
      "unit": "V",
      "group": "fuel",
      "vmin": 0,
      "vmax": 1.275,
      "round": 2,
      "confidence": "verified",
      "notes": "Pre-cat, bank 2; byte B is STFT trim"
    },
    {
      "key": "O2_B2S2",
      "name": "O2 Bank 2 Sensor 2",
      "mode": "01",
      "pid": "19",
      "nbytes": 2,
      "formula": "A/200",
      "unit": "V",
      "group": "fuel",
      "vmin": 0,
      "vmax": 1.275,
      "round": 2,
      "confidence": "verified",
      "notes": "Post-cat, bank 2 (dual exhaust)"
    },
    {
      "key": "RUNTIME",
      "name": "Run Time Since Start",
      "mode": "01",
      "pid": "1F",
      "nbytes": 2,
      "formula": "A*256+B",
      "unit": "s",
      "group": "misc",
      "vmin": 0,
      "vmax": 65535,
      "round": 0,
      "confidence": "verified"
    },
    {
      "key": "BATT",
      "name": "Battery (OBD port)",
      "mode": "atrv",
      "unit": "V",
      "group": "power",
      "vmin": 0,
      "vmax": 16,
      "confidence": "verified",
      "notes": "ELM327 ATRV pin voltage"
    }
  ],
  "dtcs": [
    {
      "code": "P1000",
      "desc": "OBD-II monitor testing not complete (readiness not set; common after battery/PCM reset)",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P1100",
      "desc": "Mass Air Flow (MAF) sensor circuit intermittent",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1101",
      "desc": "Mass Air Flow (MAF) sensor out of self-test range",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1112",
      "desc": "Intake Air Temperature (IAT) sensor circuit intermittent",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1116",
      "desc": "Engine Coolant Temperature (ECT) sensor out of self-test range",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P1120",
      "desc": "Throttle Position (TP) sensor out of range low",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1124",
      "desc": "Throttle Position (TP) sensor out of self-test range",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1127",
      "desc": "Exhaust not warm enough; downstream HO2S not tested",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1128",
      "desc": "Upstream HO2S sensors swapped (Bank 1/Bank 2 reversed)",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1130",
      "desc": "Lack of HO2S switching / adaptive fuel at limit, Bank 1",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1131",
      "desc": "HO2S indicates lean, Bank 1 Sensor 1",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1132",
      "desc": "HO2S indicates rich, Bank 1 Sensor 1",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1137",
      "desc": "HO2S indicates lean, Bank 1 Sensor 2 (downstream)",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1150",
      "desc": "Lack of HO2S switching / adaptive fuel at limit, Bank 2",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1151",
      "desc": "HO2S indicates lean, Bank 2 Sensor 1",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1152",
      "desc": "HO2S indicates rich, Bank 2 Sensor 1",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1351",
      "desc": "Ignition Diagnostic Monitor (IDM) circuit input fault",
      "system": "engine",
      "no_start": true
    },
    {
      "code": "P1352",
      "desc": "Ignition coil A primary circuit fault",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P1400",
      "desc": "DPFE (EGR pressure feedback) sensor circuit low",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1401",
      "desc": "DPFE (EGR pressure feedback) sensor circuit high",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1405",
      "desc": "DPFE sensor upstream hose off or plugged",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1406",
      "desc": "DPFE sensor downstream hose off or plugged",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1408",
      "desc": "EGR flow out of self-test range",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1409",
      "desc": "EGR Vacuum Regulator (EVR) solenoid control circuit fault",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1443",
      "desc": "EVAP control system / purge valve fault",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1450",
      "desc": "Unable to bleed up fuel tank vacuum (EVAP)",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1455",
      "desc": "EVAP system gross leak / no flow detected",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P1460",
      "desc": "Wide-open-throttle A/C relay cutoff circuit fault",
      "system": "misc",
      "no_start": false
    },
    {
      "code": "P1474",
      "desc": "Low fan control primary circuit fault",
      "system": "misc",
      "no_start": false
    },
    {
      "code": "P1500",
      "desc": "Vehicle Speed Sensor (VSS) circuit intermittent",
      "system": "driveline",
      "no_start": false
    },
    {
      "code": "P1504",
      "desc": "Idle Air Control (IAC) circuit malfunction",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1505",
      "desc": "Idle Air Control system at adaptive clip",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1506",
      "desc": "Idle Air Control overspeed error",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1507",
      "desc": "Idle Air Control underspeed error",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P1605",
      "desc": "PCM Keep Alive Memory (KAM) test error",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P1744",
      "desc": "Torque Converter Clutch (TCC) system stuck (4R70W auto)",
      "system": "driveline",
      "no_start": false
    },
    {
      "code": "P1747",
      "desc": "Electronic Pressure Control (EPC) solenoid circuit fault (4R70W)",
      "system": "driveline",
      "no_start": false
    },
    {
      "code": "P0102",
      "desc": "Mass Air Flow (MAF) circuit low input",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P0113",
      "desc": "Intake Air Temperature (IAT) circuit high input",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P0125",
      "desc": "Insufficient coolant temp for closed-loop fuel control",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0171",
      "desc": "System too lean, Bank 1",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P0172",
      "desc": "System too rich, Bank 1",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P0174",
      "desc": "System too lean, Bank 2",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P0175",
      "desc": "System too rich, Bank 2",
      "system": "fuel",
      "no_start": false
    },
    {
      "code": "P0300",
      "desc": "Random/multiple cylinder misfire detected",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0301",
      "desc": "Cylinder 1 misfire detected",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0302",
      "desc": "Cylinder 2 misfire detected",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0303",
      "desc": "Cylinder 3 misfire detected",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0304",
      "desc": "Cylinder 4 misfire detected",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0305",
      "desc": "Cylinder 5 misfire detected",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0306",
      "desc": "Cylinder 6 misfire detected",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0307",
      "desc": "Cylinder 7 misfire detected",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0308",
      "desc": "Cylinder 8 misfire detected",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0401",
      "desc": "EGR insufficient flow detected",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P0402",
      "desc": "EGR excessive flow detected",
      "system": "air",
      "no_start": false
    },
    {
      "code": "P0420",
      "desc": "Catalyst system efficiency below threshold, Bank 1",
      "system": "engine",
      "no_start": false
    },
    {
      "code": "P0430",
      "desc": "Catalyst system efficiency below threshold, Bank 2",
      "system": "engine",
      "no_start": false
    }
  ]
}