B0128 Gmc Terra is triggered when the bank 1 camshaft position sensor doesn't match the signal from the crankshaft position sensor. This is because the barometric pressure sensor is part of the MAF sensor. Sometimes, the MAF's sensing wire can accumulate and get covered with dirt, dust and/or oil residue, which can also lead to the error code.
Possible Causes :
Find out what kind of system you have and verify that voltage to the fuel level sensor is present at the fuel pump wiring harness. If the scan tool has that capability, and the scan tool can operate the IMRC valves, then the problem is either resolved and a simple code clearing is all that's left or a new PCM would be called for.
Diagnostic trouble code B0128 Gmc Terra 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 B0128 Gmc Terra.
Fortunately, B0128 Gmc Terra is a fairly common OBD code, meaning that it applies to all makes and models of vehicles made after 1996.