So you just bought an OpenXC vehicle interface? Let’s get it programmed and test it in a car with your Android device or laptop. If you have issues at any point in this process, check for similar issues in the Google Group or create a new post to ask for some assistance.

Install the OpenXC Enabler

Install the OpenXC Enabler application from Google Play on your Android phone/emulator.

If you don’t have an active Google account on your device, download the the latest APK from the GitHub releases page. The green button links to the APK file that can be installed on your Android device. Make sure you have “Allow apps from unofficial sources” checked in your Applications settings.

The Enabler takes care of a lot of boilerplate code, so your app’s code can be simpler. It also includes a basic GUI for most functionality of the Android library.

Note: Even if you only plan to use previously recorded trace files and don't need to connect to a physical vehicle interface, the Enabler app still must be installed.

The Enabler also has views that allow you to:

  • Display all received simple vehicle messages from the VI.
  • Display all received low-level CAN messages from the VI, if that functionality is enabled in the firmware.
  • Send an arbitrary CAN message to the vehicle through the VI (requires firmware that supports this feature).
  • Send a diagnostic request to the vehicle through the VI.

It’s a fairly basic UI, so consider these proof of concept features. Everything they do is available via the library’s API.

Program the Vehicle Interface

If you haven’t done so already, visit the VI firmware page to find the right firmware for your VI and to learn how to re-program it.

If you plan only to use pre-recorded vehicle data trace files instead of a physical vehicle interface, you can skip this step.

Obtaining real vehicle data from VI

  1. Plug the vehicle interface into the OBD-II port in your car - it will be somewhere below the steering wheel, possibly behind a door. It should light up blue if it's plugged in all the way and the car is running.
  2. Run the OpenXC Enabler app, hit the Search for Bluetooth VI button and wait a moment. Within a minute, it should detect your Bluetooth VI and prompt to pair. If it asks for a PIN, use 1234.
    (show me)
    Enabler disconnected Enabler pairing
  3. If your VI is plugged into a running vehicle, after a few seconds it will open a connection and start receiving vehicle data. You should see a Bluetooth icon appear next to "Active Connections" and the "Messages Received" number should be increasing.
    (show me)
    Enabler connected
  4. Swipe to the left to see the list of messages being received from the VI.
    Enabler dashboard

You can now install the OpenXC Android library and get started creating your first app. Make sure you installed the Enabler!