well i believe you said 2.9 ........ on the drivers side of your intake just behind the throttle body there is a motor looking device called the IAC ....
could be it ......
The IAC is usually a cylindrical unit attached to the upper intake manifold. This unit is electrically controlled by the computer, and allows air to flow into the intake at idle, bypassing the throttle plate. The extra air is accompanied by extra fuel to bring the idle up to proper speed, and when cold, allows a high idle condition. These units may become dirty, and need cleaning. Many idle and stalling issues tend to be blamed on these units. Cleaning is achieved by removing the electrical connector, and two screws holding it on. Once off of the vehicle, clean with throttle body cleaner (or a good carburetor cleaner). Continue cleaning until unit is clean, like new; reinstall unit. This is also a good time to clean the intake, and EGR ports (if applicable).
Testing may be achieved by bringing the engine to operating temperature, noting the idle speed (should be within spec). Unplug the unit’s electrical connector, and the idle should drop to about 650 RPM. When the unit is reinstalled, it should return to normal idle speed. If the vehicle does not idle at proper RPM (too low), there are no vacuum leaks, and the TPS calibration is correct, than the unit is most likely faulty.
or it could be your oxygen sensor ......
Oxygen Sensor Testing: (8)
There may be three wires on the O2 sensor; two gray wires and one black. The black should read ground. One gray wire should read 12V with the ignition on, and the other gray wire is the one we are after. Probe this wire with the engine warm, and running with a voltmeter’s (+) probe, and ground the negative probe. While the vehicle is running, the reading should be approximately 0.5V. A reading below this indicates a lean air fuel mixture; a reading above this indicates a rich mixture. If no reading is present, and all connections are good, the sensor is probably in need of replacement.

just a couple of things that i would check
but normally black smoke references a motor running rich ... too much fuel for amount of air .... so the air filter should be checked and if dirty replaced, because if you restrict air flow you enrich the fuel mixture on fuel injected motors.....
hope those thoughts help some