I'm building an app (running on a Pi) that will communicate with consumer vehicles for diagnostics and control. I assumed that I could achieve this over CAN bus since all vehicles after 2003 are required to support OBD (which I assumed worked over CAN).
I just discovered that my test vehicle (2009 Honda Accord) uses K-Line for diagnostics. This throws a wrench into my plans, and I need to figure out what this means for my product plans.
Can someone confirm if K-Line is going away, and all vehicles after a certain year perform OBD over the CAN bus?
If not, I assume that I would have to use an ELM327 chip (assuming the ELM can figure out which of the many protocols exist that use OBD), or is there some other way to do this?