if you just want to read and reset codes then you can just get a cheap elm327 device off ebay that pairs via bluetooth to your phone for about 10 bucks.
ignore all the marketing hype from most of these reader tools because they all do the same thing and have the same
elm327 chip in them.
the marketing behind most of these readers will tell you that it eats glitter and sh!ts rainbows but that is all just to justify the high price, the reader just converts obd messages to
AT commands for the mobile app to process.
if you want to do proper dealer level diagnostics, module programming/updating etc then you will need a mdi like the bosch or vxdiag, these require a computer or tablet to run diagnostic and programming software and do not run off phones.