I bought this to investigate the occasional engine light codes on our family's two cars ('99 BMW 323i and 2005 Toyota Corolla). Considering I've used it about a half dozen times so far, it's already paid for itself and then some. All of the problems so far have been simple and easy to fix myself- loose gas cap, dirty MAF sensor, bad spark plugs, etc. I would have paid thousands of dollars for a mechanic to diagnose and repair these problems if I didn't have this reader. I've also used this on my friends' 2004 Accord and '98 Protege, again saving them hundreds of dollars. This is the secret auto mechanics don't want you to know. The $100 they are charging you to "read" or "diagnose" your engine light literally involves 5 minutes of labor and an OBD reader that is fundamentally no different than this one. They would like to keep everyone in the dark and pay their exorbitant fees, but fortunately you don't have to be a victim. Even if you never own a single wrench, this is the best investment you can possibly make to maintain your vehicle and will save you hundreds, if not thousands, of dollars in labor charges alone.
Most of the features have been covered extensively in the ~180 reviews here, so I won't reiterate them here. I will say that despite only having two buttons, it's easy to navigate the menus once you play with it for a few minutes. This unit is powered by the OBD-II port itself, so you don't have to worry about batteries. It does allow you to reset your 'check engine' light. As far as the CD is concerned, I knew it would be a POS so I automatically threw it out. All you need is to write down the code(s) it generates, and then type them into Google and you will have you answer (and often the solution!). You can also go to a vehicle forum specific for your make (e.g. toyotanation.com) with your code(s) and ask what to next, people are generally very helpful on these forums. Even if it's something you can't fix yourself, at least you will have an idea what is going on with your car so your mechanic can't take advantage of you and overcharge you for parts/services you don't need. Lastly, it's important to understand that all these OBD-II readers will only read OBD-II codes as generated by your vehicle as required by law. If you are having a very technical issue, no generic OBD-II reader will read the manufacturer-specific codes that are generated separately from the OBD-II codes. To read these manufacturer-specific codes, you will need to go to your dealer or a certified mechanic with an appropriate computer/reader. Similarly, a generic OBD-II reader will generally not allow you to reset other diagnostic lights like your airbag sensor or ABS brakes; again, you will need a manufacturer-specific diagnostic tool to do this. However, if you are having those kinds of problems, you will most likely be visiting a professional mechanic anyways. Use this reader to figure out when can fix things by yourself and when you need to seek a professional.