O2OO is a (OBD-II compliant) car diagnostic tool. It reads sensor data from a car into an sqlite database. It can dump the measured values, generate graphs of the data and create a spreadsheetfile (tested with Libre Office and Excel 2010). That way you can analyse the behaviour of your car. O2OO can also produce a PDF-file with more indept data. This program should work with all cars made after 1996 (US) or 2001 (EU).
O2OO can also retrieve the location from a GPS module and store it in the same database. It then can create a Google Maps KML-file, coloring the route-line with a color depending on a sensor-reading.

Also future versions will do some crude analysis of the data as well (got suggestions for that? contact me!)

For O2OO to run you need an ELM327 adapter (which interfaces the CAN-bus of your vehicle to something a laptop understands enabling it to execute OBD2 commands). For GPS you need, of course a GPS which outputs standard NMEA "sentences" on a serial/usb/etc. port.


Current version: O2OO-0.7.tgz



These two graphs were made during a small trip around the neighbourhood: lots of stops and accellerations.

engine RPM

engine load


Since version 0.3, O2OO is able to generate PDFs with all measurements graphed and some extra descriptive information. An example can be viewed here.
Suggestions for what more to graph and/or add in text is welcome! Please contact me.

spreadsheet output

Version 0.4 can also produce microsoft office xml files which can be read with at least microsoft excel 2010 and libre office 3.4.6. Example: 0.5-excel.zip.

user interface of data-collector

Please note that the data in this screendump is from the (built-in) OBD2- and GPS-emulators.
The part above the white line are measured values, the part below the line is OBD2/GPS/SQL logging.

KML in Google Maps

This link will bring you to Google Maps showing the engine load while driving through Gouda (NL).
The original KML file can be obtained from here.

Example raw data

Example test-data: example-0.4.db


0.7couple of fixes (GPS, ELM327), added ELM327 emulator, added more information to the output PDF, added more sensors
0.6PDFs now contain for each sensor a map (like the google maps output!), added support for ELM327 devices which are WiFi enabled
0.5several pdf/spreadsheet output modes fixes
0.4many PDF improvements (new graphs, more meta data, landscape mode for graphs, histograms), spreadsheet output, more GPS info, retrieve start & end locations using Google Maps, adding heat-diagram, added sensor-filter, handle CAN errors more gracefully
0.3added PDF output with graphs and some details on the data drawn, show some GPS data, retrieve battery voltage, protocol stability enhanced, added more sensors


For notes regarding the usage of this program, see this page.


  • O2OO uses OpenStreetMap to draw maps (with sensor data)
  • TinyXML2 is used to parse the OpenStreetMap data
  • data is stored in SQLite databases
  • libHaru is used to generate PDF files

staatsloterij wintips

Check out my united states Mega Millions lottery winning help page