Skip to main content

XCP Driver

jumpstarter-driver-xcp provides XCP (Universal Measurement and Calibration Protocol) support for Jumpstarter, enabling remote measurement, calibration, DAQ (data acquisition), and programming of XCP-enabled ECUs.

It wraps the pyXCP library and supports Ethernet (TCP/UDP), CAN, USB, and Serial (SxI) transports.

Installation

pip3 install --extra-index-url https://pkg.jumpstarter.dev/simple/ jumpstarter-driver-xcp

Configuration

Ethernet (TCP)

export:
  xcp:
    type: jumpstarter_driver_xcp.driver.Xcp
    config:
      transport: ETH
      host: "192.168.1.100"
      port: 5555
      protocol: TCP

Ethernet (UDP)

export:
  xcp:
    type: jumpstarter_driver_xcp.driver.Xcp
    config:
      transport: ETH
      host: "192.168.1.100"
      port: 5555
      protocol: UDP

CAN

export:
  xcp:
    type: jumpstarter_driver_xcp.driver.Xcp
    config:
      transport: CAN
      can_interface: vector
      channel: 0
      bitrate: 500000
      can_id_master: 0x7E0
      can_id_slave: 0x7E1

Using a pyXCP Config File

For advanced configuration (seed & key, DAQ policies, etc.), provide a pyXCP configuration file:

export:
  xcp:
    type: jumpstarter_driver_xcp.driver.Xcp
    config:
      transport: ETH
      config_file: /path/to/xcp_config.py

Configuration Parameters

Parameter Type Default Description
transport str ETH Transport layer: ETH, CAN, USB, SXI
host str localhost IP address or hostname (Ethernet only)
port int 5555 Port number (Ethernet only)
protocol str TCP TCP or UDP (Ethernet only)
can_interface str None python-can interface name (CAN only)
channel str|int None CAN channel (CAN only)
bitrate int None CAN bitrate in bits/s (CAN only)
can_id_master int None CAN ID for master -> slave (CAN only)
can_id_slave int None CAN ID for slave -> master (CAN only)
config_file str None Path to a pyXCP config file (overrides individual params)

Usage

from jumpstarter.common.utils import env

with env() as client:
    xcp = client.xcp

    info = xcp.connect()
    print(f"Max CTO: {info.max_cto}, Max DTO: {info.max_dto}")

    xcp.unlock()

    data = xcp.upload(4, 0x1000)
    print(f"Memory at 0x1000: {data.hex()}")

    xcp.download(0x2000, b"\x42\x00\x00\x00")

    xcp.disconnect()

API Reference

.. autoclass:: jumpstarter_driver_xcp.driver.Xcp()

Release files for jumpstarter-driver-xcp 0.9.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jumpstarter-driver-xcp 0.9.0
File Size Uploaded
jumpstarter_driver_xcp-0.9.0.tar.gz 14.0 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jumpstarter-driver-xcp 0.9.0
File Interpreter ABI Platform
jumpstarter_driver_xcp-0.9.0-py3-none-any.whl Python 3 none any Details

Total release size: 31.3 kB

Release files / jumpstarter_driver_xcp-0.9.0.tar.gz

Download URL jumpstarter_driver_xcp-0.9.0.tar.gz
Size 14.0 kB
Tags Source
SHA-256 checksum
How to use checksums
bc788769980d0ab916c48ff63bcb36e0d54d9d2d92c4e79151be4e15e59989bf
BLAKE2b-256 checksum
How to use checksums
0040ccc297663b2613ae7cd9dbc8ec1caebcc8934d73ebaf6ea917ac22a2abc2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.22

Release files / jumpstarter_driver_xcp-0.9.0-py3-none-any.whl

Download URL jumpstarter_driver_xcp-0.9.0-py3-none-any.whl
Size 17.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
cb5360232339681aab023c89a3844a624e30763a0e2b3078e52fb53b7b586f3d
BLAKE2b-256 checksum
How to use checksums
91885a401c908f656671f081dd9258cefc76fb6c6ea1a43489ae229f95272591
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.22

Release history Release notifications | RSS feed

This release

0.9.0 This release

2 release files

0.8.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page