My 2000 GS400 had CEL and VSC warning lights with code 1128 and a rough idle. I cleaned the MAF sensor but it made no difference. After I took the engine cover off, I found a broken vacuum hose, which I repaired.
When I started the car, the RPMs were high, so I turned off the key and started up again. This time, everything was normal and it's been fine ever since. The car has 177,500 miles but the engine runs like new again - smooth, quiet and powerful.
This is another example of just how ambiguous and misleading the diagnostic codes can be, usually with costly consequences to the owner. My car has not been at a dealer since 60,000 miles and it's running great. I recently had the timing belt/tensioner/idler pulley/watt pump pump replaced (first time, not by the dealer) which also made a difference.