The Vehicle Interface (VI or CAN translator) is piece of hardware that connects to the car's CAN bus, translates proprietary CAN messages to the standard OpenXC message format and sends the output over USB, Bluetooth or Ethernet/WiFi to a host device.
Go shopping [Vehicle Interface]
- Reads from 2 different CAN buses simultaneously at up to 1Mbps per bus - by default CAN1 and CAN2-1 (according to the OpenXC naming scheme), with CAN2-2 available behind a solder jumper
- Can relay vehicle data at up to 250kbps over a Bluetooth connection
- Can relay vehicle data at up to 11Mbps over a USB connection
- Passes up to 6A of power from the vehicle to accessories
There are many possible implementations of a VI. The minimal functional requirements are that the VI:
- Physically connects to the OBD-II diagnostic connector directly or with a cable.
- Connects a CAN controller to at least the US federally mandated CAN bus pins.
- Runs the open source VI firmware.
- can be reprogrammed the end user without additional hardware (most likely via a USB or serial bootloader).
Optionally, the VI may:
- Connect another CAN controller to non-standard CAN bus pins (such as Ford's medium speed or infotainment bus pins)
- Allow lower-level user re-programming and debugging via ISP or JTAG.
- Pass 12v power from the vehicle through to a separate power jack for peripherals
Unless you are implementing custom CAN messages, you will most likely need a pre-built OpenXC binary firmware from the manufacturer of your vehicle. Each OEM can decide whether or not to participate in OpenXC and if so, decide which types of data they wish to expose.
Open Source Files
- Source files: https://github.com/openxc/reference-vi
- Gerber files: https://github.com/openxc/reference-vi/raw/gh-pages/assembly/electrical
- Schematic: http://vi.openxcplatform.com/electrical/sources/vehicle-interface.sch.pdf
- BOM: http://vi.openxcplatform.com/electrical/sources/vehicle-interface.bom.xlsx