GithubHelp home page GithubHelp logo

canscan's Introduction

canScan

CANopen active scanner atop Christian Sandberg's CANopen for Python. canScan watches for CAN arbitration IDs, CANopen node IDs (as determined through NMT/SDO analysis), and CANopen PDOs. canScan can scan the Object Dictionary of a specified (or discovered) CANopen node using SDO Receive.

canScan has been developed/tested against Python 2.7 and 3.7.

Build Status

Usage

Two arguments are required: a bus type and a device identifier. The bus types are due python-can, and can be found in that project's documentation. Device identifier semantics are per-driver. For virtual devices, use virtual and the network device name. Other SocketCAN devices use socketcan and the network device name. The CanalystII uses canalystii and the USB device index.

Default behavior is to perform an SDO scan across the 128 CANopen IDs, then perform dumps of the entirety of discovered nodes' Object Dictionaries. Both steps will be periodically repeated. Discovered Object Dictionary entries will be queried more regularly than failed IDs. The program exits on error or keyboard interrupt. With the --oneshot flag, only an initial set of scans will be performed, followed by the program's exit.

The --passive flag can be provided, in which case no frames will be transmitted (the driver or hardware might send frames, especially acknowledgements, on their own).

If the --scan argument is provided, it expects a comma-delimited list of numbers (either decimal, or hex with a prefix of 0x). These IDs will see their entire Dictionaries scanned whether they respond to the initial probe or not.

--passive cannot be used with --scan or --oneshot.

The default local node ID is 64 (0x40), but it may be specified with --id.

canscan's People

Contributors

dankamongmen avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.