An automotive scan tool (scanner) is an electronic tool used to interface with, diagnose and, sometimes, reprogram vehicle control modules.
There are many types from just as many manufacturers, one of the most familiar being the Snap-On "brick", or MT2500/MTG2500. Snap-On, OTC/SPX, Autel, Launch, Vetronix/Bosch and a number of other companies produce various types of scan tools, from simple code readers to highly capable bi-directional computers with programming capabilities. The scan tool is connected to the vehicle's data link connector (DLC) and, depending on the particular tool, may only read out diagnostic trouble codes or DTC's (this would be considered a "code reader") or may have more capabilities. Actual scan tools will display live data stream (inputs and outputs), have bi-directional controls (the ability to make the controllers do things outside of normal operations) and may even be able to calibrate/program modules within certain parameters. However, a typical scan tool does not have the ability to fully reprogram modules because it requires a pass-through device and specific software.