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

Uploaded Source

Built Distribution

canopen_monitor-4.0.2-py3-none-any.whl (83.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: canopen-monitor-4.0.2.tar.gz
  • Upload date:
  • Size: 72.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.0 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6

File hashes

Hashes for canopen-monitor-4.0.2.tar.gz
Algorithm Hash digest
SHA256 987329228e653bc85f2ca47d6f2c766848d47e97c1cae3c35f4882787285f6a6
MD5 b81a52fd9e8f682272236ab338b31360
BLAKE2b-256 2a524bd0fcfc34fe23da695b7aac7d0404e998a4285ab48ae022b2dbf6a7fc71

See more details on using hashes here.

File details

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

File metadata

  • Download URL: canopen_monitor-4.0.2-py3-none-any.whl
  • Upload date:
  • Size: 83.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.0 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6

File hashes

Hashes for canopen_monitor-4.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 b45d4a8290eeb031e8094e78a417a3790371cd29f8b4cfd565cf038fb7a2845d
MD5 e8ec3fadbf7c99e4f08279710d9008be
BLAKE2b-256 6b0dde80b00e19062f843e901534d30df6c5343744035381e16e798828ba9cd0

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