I have autoenginuity at home. At work I use a small launch scan tool just for checking codes and basic data. If it's not enough the shop has a 10k snap on scan tool that we all share.
For home use I use autoenginuity, you download it on a laptop, they send you an obd2 to USB cable and a security dongle. It does alot of stuff, it'll check every computer on the car, ecm, bcm, airbag, and, radio, HVAC, transfer case, etc. It has some two way capabilities like reprogramming tire sizes or programming diesel injector flow rates at replacement.
Autoenginuity lets you buy single or bundles, you can buy (in 2017 last time I updated mine) a single make for $150, Ford for example, for around $700 you could get the domestic bundle which is ford, GM, and Chrysler. Same for Asian or European bundles. They have a package for two or all three bundles too or you can just buy one for each individual make you own.
It's a little clunky to use but it does work.