VETuner Open App →

Start Doctor

The Start Doctor is a real-time diagnostic tool that watches your ECU data while you crank the engine and automatically checks the most common reasons an engine fails to start. When you stop the consultation it gives you a ranked list of problems to investigate, with direct links to the relevant settings page where appropriate.

Start Doctor dashboard during a cranking consultation

Opening the Start Doctor

Open the Start Doctor from the sidebar → Tools → 🩺 Start Doctor. The panel is only available when an ECU is connected or a log file is loaded.

The panel layout has four areas:

Running a Consultation

  1. Connect to your ECU (or load a log file - see Loading a Log File below).
  2. Click ▶ Start Consultation.
  3. Crank the engine as you normally would.
  4. The Start Doctor watches the data and updates the diagnostic cards as it gathers information.
  5. Click ⏹ Stop & Diagnose when you are done, or let the engine run - the Doctor automatically transitions to RUNNING or FAILED when the engine fires or cranking times out (10 seconds).

Auto-recording: As soon as you click Start Consultation, VETuner automatically begins recording a log file if one is not already in progress. The log is saved to a file when the consultation ends. This means you always have a recording of the diagnostic session to share with others.

Engine Phases

The Doctor tracks which phase the engine is in and adjusts all checks accordingly:

PhaseMeaning
IDLEKey on, engine not cranking. Battery baseline is captured here.
CRANKINGBattery voltage dropped ≥ 1.5 V - starter motor is engaged. RPM below 400.
RUNNINGRPM exceeded 400 - engine has started.
FAILEDCranking exceeded 10 seconds without the engine firing.

Once cranking is detected the phase only moves forward - only ↺ Reset returns to IDLE.


Diagnostic Cards

Each card corresponds to one automated check. The status icons and border colours tell you at a glance what the Doctor has found:

Diagnostic cards showing all four status states

StatusMeaning
PendingNot enough data yet, or the check only applies to a later phase.
OKChannel is within the expected range.
⚠️ WarningSomething is outside normal limits but not immediately fatal.
FailA clear problem that will prevent or impair starting.

Cards update approximately every five samples (~100 ms at 50 Hz). Hover or tap a card to see its detail text.


What the Doctor Checks

Battery Voltage

Checks battery voltage before and during cranking.

Crank Sensor

Checks whether the ECU can see the engine turning.

MAP Sensor

Checks the manifold air pressure sensor in three phases:

At key-on (IDLE): MAP should be near atmospheric pressure (typically 85–110 kPa). A reading below 85 kPa suggests a blocked or kinked vacuum reference hose. A reading above 110 kPa is physically impossible on a naturally-aspirated engine at rest and suggests a damaged sensor or incorrect type configuration.

During cranking (CRANKING/FAILED): The Doctor tracks the minimum MAP seen throughout the cranking attempt. If MAP never drops below 80 kPa after cranking times out, it fails — the intake never built vacuum, which points to large vacuum leaks, a disconnected MAP hose, or very low compression.

If the throttle is open during cranking (detected from TPS), high MAP is expected, and the check is suppressed to avoid false positives.

While running (RUNNING): Checks for a stuck sensor — a variance below 1 kPa² while the engine is running indicates the sensor is disconnected or faulty.

Temperature Sensors

Checks that coolant (CLT) and intake air (IAT) temperatures are within plausible ranges.

Key-on divergence check: After a cold soak both sensors should read close to ambient. If CLT is below 40 °C and CLT and IAT differ by more than 20 °C, the Doctor warns of a sensor wiring or calibration fault. This check is suppressed when CLT is above 40 °C because the engine was recently run and CLT legitimately diverges from IAT.

Rapid transient spikes on CLT or IAT (a strong indicator of electrical noise or poor wiring) are caught by the Signal Quality check, not by this one.

TPS at Key-On

Checks throttle position before cranking begins (IDLE phase only). The throttle pedal should be fully released. If TPS is at or above the ECU's flood-clear threshold when you turn the key, the ECU will cut all injector pulses during the first crank attempt and the engine cannot start.

Pulse Width

Confirms the ECU is actually commanding fuel delivery.

Prime pulse (key-on): Reads the prime pulse duration from the tune file. If prime pulse is set to 0 ms, warns — a small prime pulse (1–3 ms) wets the intake before the first crank and significantly improves cold-start reliability.

Cranking:

Running:

AFR

Checks the air-fuel ratio from your wideband or narrowband O₂ sensor.

If the engine never fires and AFR reads rich, the Doctor interprets this as unburnt fuel passing the sensor (normal) and suppresses the AFR symptom so it does not drown out the real problem.

Signal Quality

Checks for excessive electrical noise on the battery voltage, MAP, TPS, CLT, and IAT channels using two complementary methods:

Spike detection (all phases, including cranking): detects large sample-to-sample jumps on any channel that exceed a per-channel threshold. Legitimate cranking changes - smooth battery voltage sag, gentle MAP pulsing - produce small deltas and do not trigger spikes. Sudden transients caused by bad grounds, poor shielding, or faulty sensor wiring do.

Variance analysis (idle, running, and failed phases only): warns if the standard deviation of battery voltage exceeds 0.3 V. A settled idle should have rock-steady battery voltage; sustained variance indicates alternator ripple or poor grounds. MAP and TPS are intentionally excluded from this check — both vary naturally with engine load, and genuine noise on those channels is already caught by the spike detector above.

ECU Stability

Monitors the ECU's seconds counter (SecL) to detect unexpected reboots.

Enrichment

Checks the ECU's enrichment strategy (warm-up enrichment, after-start enrichment, air-density correction) that is needed to fire a cold engine.

Ignition Advance

Checks that cranking ignition advance is within a sensible range.

ECU Errors

Reads the ECU's built-in fault code register and flags any active error codes.

Supports two firmware families:

Any active fault code produces a WARN or FAIL (severity follows the fault's documented impact). When a sensor is in limp-home mode the card shows the substitute value the ECU is using.

This check remains PENDING on firmware families that do not expose a fault code channel (e.g. MS2Extra).

Running Phase Analysis

Once the engine fires and the Doctor enters the RUNNING phase, three additional checks activate. These are not shown as separate cards but do appear in the Diagnosis overlay when issues are found.

Idle RPM Stability: Collects RPM samples during idle conditions (TPS at 0%, RPM between 400 and 1500) and calculates the coefficient of variation (CV = stddev / mean). A CV above 5% produces a Warning (mildly unsteady); above 10% produces a Fail (rough idle). Suggests checking vacuum leaks, IAC control settings, warmup enrichment, and idle ignition correction.

Idle AFR Accuracy: Compares mean idle AFR against the programmed target from the tune file. Warns at ±1.0 AFR units deviation from target; fails at ±2.0 AFR units deviation. If no target data is available, evaluates against the rich/lean warning thresholds instead.

Post-Throttle RPM Stability: Watches RPM in the 3 seconds after the throttle closes from an open position. An RPM drop greater than 250 RPM produces a Warning; a drop greater than 400 RPM or RPM falling below 600 produces a Fail (near-stall). Reads DFCO configuration and IAC type from the tune file to give specific advice about re-engage RPM, fuel cut settings, and IAC idle-up.


The Diagnosis

When the consultation ends (you press Stop, the engine starts, or cranking times out), the Diagnosis overlay appears automatically.

The overlay shows:

How problems are ranked

The Doctor uses a heuristic expert system that reasons about cause and effect:

Stall pattern classification

If the engine starts and then stalls, the Doctor classifies the stall:

PatternStall afterMost likely cause
Immediate< 3 secondsAfter-start enrichment (ASE) too low or tapering too fast
Warmup3 – 30 secondsWarmup enrichment (WUE) insufficient at current temperature
Running> 30 secondsFuelling or ignition issue at the operating point

Threshold Overrides

Advanced users can adjust the thresholds used by each check. Click ⚙️ Thresholds in the header to open the drawer.

Threshold override drawer showing all configurable groups

Thresholds are organised into nine groups - Battery, Crank Sensor, MAP Sensor, Temperatures, Signal Noise, Pulse Width, AFR, Ignition, and Stall Detection.

Overrides survive ↺ Reset - they are configuration, not session state.


Loading a Log File

You do not need a live ECU connection to use the Start Doctor. Click 📂 Load Log to load a previously recorded log file (MLG, MSL+MSQ, or JSON recording). VETuner replays the log through the same Start Doctor engine, giving you a full analysis of a past cranking attempt.

VETuner Pro required. Loading a previously saved log file is a VETuner Pro feature. Upgrade to VETuner Pro to unlock log file analysis.

This is useful for:


Tips