When you click on links to various merchants on this site and make a purchase, this can result in this site earning a commission. Affiliate programs and affiliations include, but are not limited to, the eBay Partner Network.
I ended up going the smart phone route and go the Carly app. It uses a Bluetooth (for android) or WiFi (for iOS) OBD2 adapter. The app then can read/clear codes. The app can also recode some features. I re-coded my car to do 5 blinks for lane changes and to turn on my fogs when I unlock the door. There are more add ons for the app you can buy (like service resets and a few others). All in the price is about the same as some of the code readers you'll find.
I have the Bavarian Technic reader - not cheap, but very good. I found one on Ebay for about half-price. It far outstrips my generic code reader, including providing reset capability for all codes and faults.