A utility for displaying and tracking activity over the CAN bus.
Project description
CANOpen Monitor
A utility for displaying and tracking activity over the CAN bus.
Run App
$
canopen-monitor
Install via PyPi
$
pip3 install canopen-monitor
Install Locally
Build the CANOpen Monitor module:
$
python3 setup.py sdist bdist_wheel
Install for current user only:
$
python -m pip install dist/*.whl
Install for all users:
$
sudo python -m pip install dist/*.whl
Clean up build artifacts:
$
rm -rf build dist *.egg-info
Development and Contribution:
Install dependencies:
$
pip install -r requirements.txt
Install development dependencies:
$
pip install -r dev-requirements.txt
Lint Code:
$
flake8 . --count --select=E9,F63,F7,F82 --show-source --statistics
Run unit tests:
$
python -m unittest -f --locals tests/*.py
Auto generate Sphinx documentation:
$
sphinx-apidoc -o docs/source canopen_monitor
$
make -C docs clean html
Deploy manually to PyPi:
$
python -m twine upload dist/*
(This assumes that you have the correct PyPi credentials and tokens set up according to the instructions outlined here)
Configs:
These are the auto-generated configs that are stored in ~/.config/canopen-monitor
devices.json:
{
"dead_timeout": 120,
"devices": [
"can0"
],
"stale_timeout": 60
}
A set of devices configs including a list of CAN Buses that CAN Monitor will try to bind to on launch as well as respective timeout lengths.
(note: additional buses can be added via cmd-line arguments, see canopen-monitor --help
)
layout.json
{
"data": [
{
"data": [
{
"capacity": null,
"fields": [],
"frame_types": [
"HEARTBEAT"
],
"name": "Hearbeats",
"type": "heartbeat_table"
},
{
"capacity": null,
"fields": [],
"frame_types": [],
"name": "Info",
"type": "info_table"
}
],
"split": "vertical",
"type": "grid"
},
{
"capacity": null,
"fields": [],
"frame_types": [
"NMT",
"SYNC",
"TIME",
"EMER",
"PDO1_TX",
"PDO1_RX",
"PDO2_TX",
"PDO2_RX",
"PDO3_TX",
"PDO3_RX",
"PDO4_TX",
"PDO4_RX",
"SDO_TX",
"SDO_RX",
"UKNOWN"
],
"name": "Misc",
"type": "misc_table"
}
],
"split": "horizontal",
"type": "grid"
}
A recursive set of dictionaries that define how CAN Monitor constructs the UI layout and what CAN Message types go to what tables.
nodes.json
{
"64": "MDC"
}
A list of COB ID's in decimal notation that have a paired name which will override the default display name of that node in CAN Monitor.
Message Types + COB ID Ranges:
Wikipedia Table
Abridged Table:
Name | COB ID Range |
---|---|
SYNC | 080 |
EMCY | 080 + NodeID |
TPDO1 | 180 + NodeID |
RPDO1 | 200 + NodeID |
TPDO2 | 280 + NodeID |
RPDO2 | 300 + NodeID |
TPDO3 | 380 + NodeID |
RPDO3 | 400 + NodeID |
TPDO4 | 480 + NodeID |
RPDO4 | 500 + NodeID |
TSDO | 580 + NodeID |
RSDO | 600 + NodeID |
NMT (Heartbeat) | 700 + NodeID |
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file canopen-monitor-3.1.2.tar.gz
.
File metadata
- Download URL: canopen-monitor-3.1.2.tar.gz
- Upload date:
- Size: 36.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.1 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4687f7fbb11f70c01ebb767fc453018557988ebda789acec63a60df6b9c9adb0 |
|
MD5 | 8ddc31fa74c8f5bcdd63a1f868e88f94 |
|
BLAKE2b-256 | 196c5f1fb9b1b608a7447eb991cfdef08b6fdb7713e4131e052a2046c8292fe9 |
File details
Details for the file canopen_monitor-3.1.2-py3-none-any.whl
.
File metadata
- Download URL: canopen_monitor-3.1.2-py3-none-any.whl
- Upload date:
- Size: 56.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.50.1 CPython/3.8.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca618fa46364af639d49f56fa2dc91eae6593fd4d162a28c469fcff542cd1d9d |
|
MD5 | 099258dc36ce6e8f87409d6505b5c842 |
|
BLAKE2b-256 | ad5b521ccb173ffc7994f3d3f954f97999f2cfff2e7d2c42dc5eadbf2bbc825f |