Good question — this is actually pretty common and there's a logical explanation.
Why Foxwell shows P0087 but ISTA doesn't:
Stored vs. Active faults: The Foxwell likely read a stored/history DTC from the generic OBD2 layer (SAE/ISO standard). ISTA reads the BMW-specific fault memory directly from the DME via manufacturer protocol. If the fault was temporary and the DME already cleared it internally or it didn't meet BMW's internal storage criteria, ISTA won't show it.
OBD2 (generic) vs. BMW-proprietary: Generic scanners read from the OBD2 standardized emission-related fault memory. ISTA reads from BMW's own fault store. These are two separate fault memories — they don't always match. A code can exist in the OBD2 layer but not in the BMW-specific layer, and vice versa.
Freeze frame / pending codes: P0087 might be sitting as a pending code on the OBD2 side. Foxwell shows pending codes by default, while ISTA typically only shows confirmed BMW-specific faults.
What to do:
In ISTA, check the DME fault memory specifically — look for BMW equivalents like "Fuel rail pressure, plausibility" or "Low pressure fuel supply" related entries.
Clear faults with both tools, drive the car, and re-scan with both to see if it comes back.
If P0087 returns on the Foxwell, you likely have a real issue — low-pressure fuel pump, fuel filter, fuel pressure regulator, or a leaking injector. Don't ignore it just because ISTA doesn't flag it.
Bottom line: Trust the fault code itself — P0087 is a real reading from the ECU's OBD2 layer. ISTA just uses a different communication path and threshold for displaying it. What vehicle/engine are you dealing with? That would help narrow down the likely cause.
This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
By continuing to use this site, you are consenting to our use of cookies.