# Scripts

The following modules are callable from python-can.

They can be called for example by `python3 -m can.logger` or `can_logger.py` (if installed using pip).

## can.logger

Command line help, called with `--help`:

    $ python3 -m can.logger -h
    /usr/bin/python3: Error while finding module specification for 'can.logger' (ModuleNotFoundError: No module named 'can')

## can.player

    $ python3 -m can.player -h
    /usr/bin/python3: Error while finding module specification for 'can.player' (ModuleNotFoundError: No module named 'can')

## can.viewer

A screenshot of the application can be seen below:

The first column is the number of times a frame with the particular ID that has been received, next is the timestamp of the frame relative to the first received message. The third column is the time between the current frame relative to the previous one. Next is the length of the frame, the data and then the decoded data converted according to the `-d` argument. The top red row indicates an error frame.

### Command line arguments

By default the `can.viewer` uses the SocketCAN interface. All interfaces are supported and can be specified using the `-i` argument or configured following Configuration.

The full usage page can be seen below:

    $ python3 -m can.viewer -h
    /usr/bin/python3: Error while finding module specification for 'can.viewer' (ModuleNotFoundError: No module named 'can')