I haven't found anybody near me that will read out the codes (for a stranger at least) for free. If you have to pay for a diagnostic, it is often worth it. What type of maintenance have you done on the car? O2 sensors should be due and that will make it run rich and sooty. Also check the EGR that it is closing properly at idle. May need cleaning.