Inpa Error 159 Here
In the BMW diagnostic stack, INPA (Interpretierbare Programmiersprache für die BMW Diagnose) acts as the front-end user interface. It communicates with the car via the EDIABAS (Eigene Diagnose-Basis Software) middleware. EDIABAS translates high-level commands from INPA into low-level protocols (K-Line, DCAN, or K-CAN).
Error 159 is an EDIABAS error code that translates to: "JOB_CANCELED" or "JOB_INCORRECT_RESULT."
In plain English: The diagnostic request sent from your laptop reached the car’s control unit, but the answer was malformed, incomplete, or never arrived. The ECU either said "I don't understand the question" or the signal was corrupted during transmission. inpa error 159
Unlike a simple "cable not found" error (Error 128), Error 159 indicates partial communication. The handshake succeeded, but the conversation failed. Here are the seven most common root causes.
Modern BMW DMEs are very sensitive to voltage. If the battery voltage drops below 12V during cranking, the DME self-check can fail, throwing this code. Reinstall FTDI drivers if the cable appears as
Symptoms: Worked fine before battery swap. After new battery, Error 159 on all DME jobs. Other modules (ABS, Airbag) work.
Root Cause: The new battery was not registered. The DME was in reduced power mode (emergency program) and disabled diagnostic KWP2000 responses. Unlike a simple "cable not found" error (Error
Solution: Registered the battery using Tool32 (steuern_batterie job). Restarted INPA. Error resolved.
Before assuming the DME is broken, check these three main causes, ordered from easiest to hardest:
Chinesium K+DCAN cables are a blessing and a curse.