Skip to main content

Pythonic wrapper around the VECTOR CANape API

Project description

pyCANape

PyPI - Version PyPI - Python Version Documentation Status

This is a pythonic wrapper around the VECTOR CANape API. The documentation is available here.

Example usage

Open and close CANape

import pycanape

canape = pycanape.CANape(
    project_path="C:\\Users\\Public\\Documents\\Vector CANape 17\\Examples\\XCPDemo",
    modal_mode=True,
)
canape.exit(close_canape=True)

Create Module

from pycanape import DriverType, Channels

# Create XCPsim module
xcpsim = canape.create_module(
    module_name="XCPSim",
    database_filename=r"C:\Users\Public\Documents\Vector CANape 17\Examples\XCPDemo\XCPsim.a2l",
    driver=DriverType.ASAP3_DRIVER_XCP,
    channel=Channels.DEV_CAN1,
    go_online=True,
)

Calibration

# get scalar (0D) calibration object
scalar_obj = xcpsim.get_calibration_object("map1Counter")

# read scalar value
print(scalar_obj.value)

# set scalar value
scalar_obj.value = 2.0

# get axis (1D) calibration object
axis_obj = xcpsim.get_calibration_object("Curve1")

# read axis length
axis_dim = axis_obj.dimension

# read axis values
print(axis_obj.axis)

# set axis values
axis_obj.axis = [0] * axis_dim

How to contribute

Setup your development environment:

# clone the repository
git clone https://github.com/zariiii9003/pycanape.git

# install pyCANape in editable mode with all development dependencies
pip install -e .[dev,doc]

# install the pre-commit hook
pre-commit install

After you implement your changes you should run the static code analysis and check the documentation:

# install pycanape in editable mode
python -m pip install -e .[dev,doc]

# format the code with black
black .

# run the linter
ruff check --fix src

# run the type checker
mypy .

# run the tests
python -m pytest --cov-config=./pyproject.toml --cov=pycanape  --cov-report=term --cov-report=html

# build the documentation
python -m sphinx -Wan --keep-going docs build

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyCANape-0.7.0.tar.gz (39.6 kB view details)

Uploaded Source

Built Distribution

pyCANape-0.7.0-py3-none-any.whl (41.3 kB view details)

Uploaded Python 3

File details

Details for the file pyCANape-0.7.0.tar.gz.

File metadata

  • Download URL: pyCANape-0.7.0.tar.gz
  • Upload date:
  • Size: 39.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for pyCANape-0.7.0.tar.gz
Algorithm Hash digest
SHA256 df6ee813c4ea6ba25befc0a2c5a4bd8228322f70f4d8044d43d166d0d5d99bff
MD5 4fa036d334f4861f37f59ddaaee042c3
BLAKE2b-256 4f0db8c8781fbb043052d417f5b51e8a3bd7ff3d75748f8d1a3e4a38cfab8828

See more details on using hashes here.

File details

Details for the file pyCANape-0.7.0-py3-none-any.whl.

File metadata

  • Download URL: pyCANape-0.7.0-py3-none-any.whl
  • Upload date:
  • Size: 41.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.6

File hashes

Hashes for pyCANape-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2c1198f6775753e2b152c69bbbe47eec29f200c948acd67c5635229d3081c3c8
MD5 8ec0ddc66c5ce23c4e153d608c664484
BLAKE2b-256 85764753971b54f89c6e0c70328dafa31f5b1196f9f2aa3bf179f9ab18a5722e

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page