For those who like nice and pretty:
Mercedes Diagnostic Code Reader Tool W124 OBD1 300E 320E 400E 190E and Others | eBay
And for those who like do-it-yourself-quickly - extracted from a post by
stevebfl:
The impulse method of code retrieval uses a box that counts and sums electric inputs. The input that is used is a switched ground. One proper method (which I have used) is to wire a led (light emitting diode) between batt positive and the diagnostic socket in question. . Once the diode is wired in place, turn on ignition (the diode might blink once but it shouldn't be
lit) and with a second jumper wire short the diagnostic terminal (which you are checking) to ground (the led will of course light during this event. Do this activation for
2-3 seconds. After a brief pause the ECU being addressed will send its ground signal output. One pulse means you have no faults, any other number describes a particular
fault code. Do you have data to decipher the code?
After the last pulse of the string and you have written the code number down, initiate the sequence again. If you get
the same code that was the only code in memory. If you get a higher number (the lower numbered codes will come out
first) write it down and repeat until you get the first code to repeat.
You now should have all your codes recorded. Now you should probably erase them and reread them to determine which faults are permanent (exist at the moment). To erase the code you start where we left off; having read all the codes and then re-read the first code. At that point short the diagnostic pin to ground for 6-8 seconds. Next do the retrieval initiation (the two second grounding), this will pull the
next code. Do the 6-8 sec erase procedure and then reread again and erase. Do this until all the codes you recorded have been erased. You will know this has happened when you again reread the code and you get one blink for "no codes set".
One should not do this unless you have appropriate service info to use the results and understand the system.