Skip to main content

Gen Vehicle Protocol Tool

adbctool is a convinent tool to let you quickly generate a nearly complete code for a new vehicle for Apollo.

You only have to do is to have the dbc file (which is a communication protocol for the car, which is usually made by the vehicle integrated company), and write a less 10 lines config for generate an encode/decode.

How to get vehicle's DBC file

  • opendbc is a project that opens the vehicle dbc protocol.
  • openvehicles is an open car project that contains any vehicle information you want to know.
  • whl-vehicles Apollo vehicle protocols based by opendbc.

Quick start

Install

You can install adbctool by following cmd.

pip3 install adbctool

For local development (editable install):

python -m pip install -U pip setuptools
python -m pip install -e .

Note: parser runs in strict DBC mode by default. Non-standard comment lines such as # ... and // ... are treated as invalid syntax. Use standard DBC comment entries (CM_ ...) in source files.

Example

Generate c++ code based on dbc file.

  • vehicle dbc file : vehicle's dbc file
  • vehicle type: vehicle type
  • sender: the sender of the message, the control protocol template will be used for sender

Generate code using a specific sender name

# adbctool -f <vehicle.dbc> -t <vehicle_type> --sender <sender_name>
adbctool -f test/acura_ilx_2016_nidec.dbc -t acura_ilx --sender ADAS

Or generate code using a list of sender IDs (in hexadecimal)

# adbctool -f <vehicle.dbc> -t <vehicle_type> --sender_list <sender_id_hex>
adbctool -f test/acura_ilx_2016_nidec.dbc -t acura_ilx --sender_list 0x400

Metadata

Release files for adbctool 0.2.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 adbctool 0.2.0
File Size Uploaded Provenance
adbctool-0.2.0.tar.gz 26.1 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for adbctool 0.2.0
File Interpreter ABI Platform
adbctool-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 65.7 kB

Release files / adbctool-0.2.0.tar.gz

Download URL adbctool-0.2.0.tar.gz
Size 26.1 kB
Tags Source
SHA-256 checksum
How to use checksums
40d4632ed2a23d498efe383bb22a72fd0799fe959403c1af693334a411192361
BLAKE2b-256 checksum
How to use checksums
70a222248c6c2001ab7733715eeb1112f7dcabdf67cce491ce0199a05fef8910
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / adbctool-0.2.0-py3-none-any.whl

Download URL adbctool-0.2.0-py3-none-any.whl
Size 39.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4c9cbd62e7103f412954cb82e7ec78b978a1853855b55f73d34c72f4351fb319
BLAKE2b-256 checksum
How to use checksums
f6172f386c558fff6c1a326b3ac143082176203c9cc12361ed630263eec80643
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Security for adbctool 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

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