Using the OBDuino with a Toyota 2007 Matrix required a bit of work, but I got some further success today.
Still using the jumpered L line (Simply taking the K line feed and putting it onto the L line feed). This allows me to actually connect. (The car needs the L line.
The other problem was getting the unit to start up again when after I shut off the car and started it up again.
Using #define commands I added two modes for compilation. One mode will cause a replaces the init of ISO 9141 with an init process that can be interupted, and another mode will allow us to use ECU feedback as our 'engine on' model (instead of using RPM = 0).
When the ignition is turn from ON (or Accessory) to OFF, the OBDuino will save the trip data and go into a wait state. Here we discard the data screen and pop up a fake Car Alarm screen with a roaming * (back and forth). The asterisk moves fairly slowly as we are now waiting for an ECU connection before we go back to the data screen. On 9141 reinit mode, though the asterisk moves quicker (about 1/3 second per move as we don't actually poll for ECU connection, but are actually stepping though the long connection process in little steps, which allows us to move the asterisk faster.)
Once we get reconnected to the ECU we return to the data screen.
During the re-init process, the user can still use the buttons to configure the OBDuino. (This will cause the re-init to fail, but big deal).
Also, when the user uses the buttons when the OBDuino is off, the back light will turn on again (then off when they are done.)
I still have not done full testing on the changes yet, but I can now use it!