Skip to main content

A utility for displaying and tracking activity over the CAN bus.

Project description

CANOpen Monitor

License PyPi Trello Unit Tests Build Issues

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


Download files

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

Source Distribution

canopen-monitor-3.1.2.tar.gz (36.9 kB view details)

Uploaded Source

Built Distribution

canopen_monitor-3.1.2-py3-none-any.whl (56.8 kB view details)

Uploaded Python 3

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

Hashes for canopen-monitor-3.1.2.tar.gz
Algorithm Hash digest
SHA256 4687f7fbb11f70c01ebb767fc453018557988ebda789acec63a60df6b9c9adb0
MD5 8ddc31fa74c8f5bcdd63a1f868e88f94
BLAKE2b-256 196c5f1fb9b1b608a7447eb991cfdef08b6fdb7713e4131e052a2046c8292fe9

See more details on using hashes here.

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

Hashes for canopen_monitor-3.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ca618fa46364af639d49f56fa2dc91eae6593fd4d162a28c469fcff542cd1d9d
MD5 099258dc36ce6e8f87409d6505b5c842
BLAKE2b-256 ad5b521ccb173ffc7994f3d3f954f97999f2cfff2e7d2c42dc5eadbf2bbc825f

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