P0156 Opel Zafira B is triggered when the bank 1 camshaft position sensor doesn't match the signal from the crankshaft position sensor. The spark should have a light tan color. If the sensor probe comes with white and chalky parts, this means it has been lagging between switching phases, and should be replaced.
Possible Causes :
Use the DVOM to test resistance and continuity on all system circuits if actuator and sensor resistance levels are in compliance with manufacturer's specifications. With the valve disconnected, the red voltmeter lead should be attached to the IMRC valve power wire and the black voltmeter lead connected to ground. If the engine displays a miss and there wasn't a code, determine which cylinder is misfiring. If the exhaust manifold is visible, spay or pour a small amount of water on each cylinder exhaust port. Water will evaporate immediately on good cylinders and slowly on the missing cylinder. If this can't be accomplished pull the plugs and check the condition.
Diagnostic trouble code P0156 Opel Zafira B is not difficult to diagnose and repair. Thus, it always pays to have a qualified technician to look after your vehicle should this error code arise.
Diagnosing this code requires the engine to be in good running shape, without unmetered air entering the engine. If other codes that relates to misfiring condition, lean running or air entering the engine is present, then you must first fix those error codes before P0156 Opel Zafira B.
Fortunately, P0156 Opel Zafira B is a fairly common OBD code, meaning that it applies to all makes and models of vehicles made after 1996.