Skip to content

Interfaces

ediabasx supports multiple communication interfaces. Choose the one that matches your vehicle and hardware.

Interface Overview

Simulation

When to use: Testing without hardware or ECU access.

  • Hardware required: None
  • CLI: --interface simulation or --simulation

Serial (K-Line)

When to use: Older BMWs using K-Line via OBD-II.

  • Hardware required: USB K-Line/OBD-II cable
  • CLI: --interface serial

K+DCAN

When to use: Vehicles that use both K-Line and D-CAN.

  • Hardware required: K+DCAN USB adapter
  • CLI: --interface kdcan

ENET

When to use: Newer BMWs using Ethernet (F/G series).

  • Hardware required: ENET cable (OBD-II to Ethernet)
  • CLI: --interface enet

Gateway

When to use: Remote/centralized access over TCP (JSON-RPC gateway).

  • Hardware required: Network access to a running gateway server
  • CLI: --interface gateway or --gateway <host:port>

Hardware Requirements by Interface

InterfaceHardwareNotes
SimulationNoneFor development/testing
Serial (K-Line)USB K-Line/OBD-II cableOlder vehicles
K+DCANK+DCAN adapterSupports K-Line + D-CAN
ENETENET (OBD-II to Ethernet) cableF/G series Ethernet
GatewayNetwork accessRequires gateway server

Connection Examples

Simulation

bash
ediabasx run path/to/file.prg IDENT --interface simulation

Serial (K-Line)

bash
ediabasx run path/to/file.prg IDENT \
  --interface serial \
  --serial-port /dev/ttyUSB0 \
  --serial-baud 9600 \
  --serial-protocol kwp

K+DCAN (ISO-TP)

bash
ediabasx run path/to/file.prg IDENT \
  --interface kdcan \
  --serial-port /dev/ttyUSB0 \
  --serial-protocol isotp \
  --serial-tester-can-id 0x7e0 \
  --serial-ecu-can-id 0x7e8

ENET

bash
ediabasx run path/to/file.prg IDENT \
  --interface enet \
  --enet-host 169.254.0.1 \
  --enet-port 6801

Gateway

Start a gateway on another machine:

bash
ediabasx gateway \
  --interface serial \
  --serial-port /dev/ttyUSB0 \
  --serial-baud 9600

Connect to it remotely:

bash
ediabasx run path/to/file.prg IDENT \
  --interface gateway \
  --gateway-host 192.168.1.50 \
  --gateway-port 6801