As a counter to that point - unless you're willing to spend mega-$$$ on a high-end scan tool, you won't be able to read all of the OBD-2 codes.
Even with such a scan tool - there may still be certain codes that are "manufacturer only" readable.
Even with such a scan tool - there may still be certain codes that are "manufacturer only" readable.