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

Uploaded Source

Built Distribution

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

Uploaded Python 3

File details

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

File metadata

  • Download URL: canopen-monitor-4.0.0.tar.gz
  • Upload date:
  • Size: 72.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 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.0.tar.gz
Algorithm Hash digest
SHA256 9a96e36869e8093ddd0df3c87264edf9e12bada00d0ae03649415724125d9536
MD5 c05fabe156e3431a9c97f5aa11f4f416
BLAKE2b-256 e18cbfdd863ca8ed6d152ad38de27f6c5d4eb77dd7bcc2254c6185d995edca41

See more details on using hashes here.

File details

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

File metadata

  • Download URL: canopen_monitor-4.0.0-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.6.4 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 1becdc8cf353d7e88f5aa83dbf24d3533a087b6f7a0e45bc0c6f7d7f51f65508
MD5 4cc37cb98d65f03804f39ab9d1089cf8
BLAKE2b-256 70ab86ab10084d046d78c1fcb2572de2b21472d41e03ae9272c66c19809c68d1

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