python-can ========== The **python-can** library provides Controller Area Network support for `Python `__, providing common abstractions to different hardware devices, and a suite of utilities for sending and receiving messages on a CAN bus. **python-can** runs any where Python runs; from high powered computers with commercial `CAN to USB` devices right down to low powered devices running linux such as a BeagleBone or RaspberryPi. More concretely, some example uses of the library: * Passively logging what occurs on a CAN bus. For example monitoring a commercial vehicle using its `OBD-II port `__. * Testing of hardware that interacts via CAN. Modules found in modern cars, motorcycles, boats, and even wheelchairs have had components tested from Python using this library. * Prototyping new hardware modules or software algorithms in-the-loop. Easily interact with an existing bus. * Creating virtual modules to prototype CAN bus communication. Brief example of the library in action: connecting to a CAN bus, creating and sending a message: .. literalinclude:: ../examples/send_one.py :language: python :linenos: Contents: .. toctree:: :maxdepth: 1 installation configuration api interfaces virtual-interfaces plugin-interface other-tools scripts development history Known Bugs ~~~~~~~~~~ See the project `bug tracker`_ on github. Patches and pull requests very welcome! .. admonition:: Documentation generated |today| .. _Python: http://www.python.org .. _Setuptools: http://pypi.python.org/pypi/setuptools .. _Pip: http://pip.openplans.org/ .. _easy_install: http://peak.telecommunity.com/DevCenter/EasyInstall .. _IPython: http://ipython.scipy.org .. _bug tracker: https://github.com/hardbyte/python-can/issues