Skip to main content

An NCurses-based TUI application for tracking activity over the CAN bus and decoding messages with provided EDS/OD files.

Project description

CANOpen Monitor

license CodeQL pypi read the docs unit tests deployment bugs feature requests

An NCurses-based TUI application for tracking activity over the CAN bus and decoding messages with provided EDS/OD files.


Quick Start

Install

$ pip install canopen-monitor

Run

Run the monitor, binding to can0

$ canopen-monitor -i can0

Use this for an extensive help menu

$ canopen-monitor --help


Configuration

The default configurations provided by CANOpen Monitor can be found in canopen_monitor/assets. These are the default assets provided. At runtime these configs are copied to ~/.config/canopen-monitor where they can be modified and the changes will persist.

EDS files are loaded from ~/.cache/canopen-monitor


Development and Contribution

Documentation

Check out our Read The Docs pages for more info on the application sub-components and methods.

Pre-Requisites

  • Linux 4.11 or greater (any distribution)

  • Python 3.8.5 or higher (pyenv is recommended for managing different python versions, see pyenv homepage for information)

Install Locally

Setup a virtual CAN signal generator

$ sudo apt-get install can-utils

Start a virtual CAN

$ sudo ip link add dev vcan0 type vcan

$ sudo ip link set up vcan0

Clone the repo

$ git clone https://github.com/Boneill3/CANopen-monitor.git

$ cd CANopen-monitor

$ pip install -e .[dev]

(Note: the -e flag creates a symbolic-link to your local development version. Set it once, and forget it)

Generate random messages with socketcan-dev

$ chmod 700 socketcan-dev

$ ./socketcan-dev.py --random-id --random-message -r

Start the monitor

$ canopen-monitor

Create documentation locally

$ make -C docs clean html

(Note: documentation is configured to auto-build with ReadTheDocs on every push to master)


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-4.1.0.tar.gz (72.5 kB view details)

Uploaded Source

Built Distribution

canopen_monitor-4.1.0-py3-none-any.whl (84.0 kB view details)

Uploaded Python 3

File details

Details for the file canopen-monitor-4.1.0.tar.gz.

File metadata

  • Download URL: canopen-monitor-4.1.0.tar.gz
  • Upload date:
  • Size: 72.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for canopen-monitor-4.1.0.tar.gz
Algorithm Hash digest
SHA256 ded6c1baa2bea011a17755157aa685beab40c1f8aa7f361e5f847a190246ccac
MD5 f2f4e15493a918891eecf97b8adfd0cf
BLAKE2b-256 e2c5fc484ece18126ff7a864ef8c0bd812910d3fd558d602bef01d51dcc399ec

See more details on using hashes here.

File details

Details for the file canopen_monitor-4.1.0-py3-none-any.whl.

File metadata

  • Download URL: canopen_monitor-4.1.0-py3-none-any.whl
  • Upload date:
  • Size: 84.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.6.0 importlib_metadata/4.8.2 pkginfo/1.8.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.9.8

File hashes

Hashes for canopen_monitor-4.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5409c1232b257ea4f7a268a033ee15fb0dad01c87973bb6203259042ad68dd9d
MD5 b81d57266fe02d88e081a1eae440432a
BLAKE2b-256 9a3a76f7358b5f19fe6ad6b71a6bbdefc6e1fa626eb25dfb11b1532c305b8677

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