Skip to content
Go to file


Failed to load latest commit information.
Latest commit message
Commit time


OpenXC Vehicle Interface Firmware


Keywords:vehicle, openxc, embedded Documentation Status

The OpenXC vehicle interface (VI) firmware runs on a microcontroller connected to one or more CAN buses. It receives either all CAN messages or a filtered subset, performs any unit conversion or factoring required and outputs a generic version to a USB interface.

For more documentation, see the vehicle interface section on the OpenXC website or the vehicle interface documentation.


For the full build instructions, see the documentation.


  • Make sure you release the Python library first if there are any updates
  • Update script/bootstrap/ci-requirements.txt to use released version at PyPI (i.e. the requirement should be openxc==<latestversion>)
  • Make sure you release the openxc-message-format library first if there are any updates
  • Update the src/libs/openxc-message-format with git submodule update --remote
  • Checkout next branch and make edits.
  • Bump the version using semantic versioning in - CHANGELOG.mkd - README.rst - src/config.cpp - docs/index.rst - docs/
  • Checkout master, merge in next
  • Run 'fab release', say yes to the tag and use the format v0.9.1
    • This will run the test suite, tag, and push to GitHub
  • Checkout the next branch, and edit the same files to change the version to the next development release (one patch release up with the -dev suffix, e.g. v0.9.2-dev
  • Go to and promote the tag you just created to a new release - copy and paste the changelog into the description.
    • Attach the openxc-vi-firmware-*.zip from the releases directory to the release on GitHub


Copyright (c) 2012-2018 Ford Motor Company

Licensed under the BSD license.

This repository includes links to other source code repositories (as git submodules) that may be distributed under different licenses. See those individual repositories for more details.

You can’t perform that action at this time.