Skip to content

ebroecker/canmatrix

Repository files navigation

Canmatrix is a python package to read and write several CAN (Controller Area Network) database formats.

PyPI PyPI - Python Version Coverall GitHub issues

About

Canmatrix implements a "Python Can Matrix Object" which describes the can-communication and the needed objects (Boardunits, Frames, Signals, Values, ...) Canmatrix also includes two Tools (canconvert and cancompare) for converting and comparing CAN databases.

  • Multiple formats automotive related communication matrix file parsing.
  • CAN message encoding and decoding.

Supported file formats for import:

.dbc candb / Vector
.dbf Busmaster (open source!)
.kcd kayak (open source!)
.arxml autosar system description
.yaml dump of the python object
.xls(x) excel xls-import, works with .xls-file generated by this lib
.sym peak pcan can description
.xml (fibex or CANopen eds)
.ldf (lin bus) 
.odx (diagnostic file)
.eds

Supported file formats for export:

.dbc
.dbf
.kcd
.xls(x)
.json Canard (open source!)
.arxml (very basic implementation)
.yaml (dump of the python object)
.sym
.xml (fibex)
.lua (wireshark script)
.scapy 

Project Homepage: https://github.com/ebroecker/canmatrix

Documentation: https://canmatrix.readthedocs.io

Installation

https://canmatrix.readthedocs.io/en/latest/installation.html

Chinese Translation / 安装中文方法解释及注意事项

Contributing

Source Code, Documentation, Examples, Report issues and Any other contributions are extremely appreciated.

  1. Fork the Project
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature)
  3. Commit your Changes (git commit -m 'Add some AmazingFeature')
  4. Push to the Branch (git push origin feature/AmazingFeature)
  5. Open a Pull Request