can_logger - CAN data logger
usage: logger.py [-h] [-c CHANNEL]
- [-i
{canalystii,cantact,etas,gs_usb,iscan,ixxat,kvaser,neousys,neovi,nican,nixnet,pcan,robotell,seeedstudio,serial,slcan,socketcan,socketcand,systec,udp_multicast,usb2can,vector,virtual}]
[-b BITRATE] [--fd] [--data_bitrate DATA_BITRATE] [-f LOG_FILE] [-a] [-s
FILE_SIZE] [-v] [--filter
{<can_id>:<can_mask>,<can_id>~<can_mask>}
[{<can_id>:<can_mask>,<can_id>~<can_mask>} ...]]
[--active | --passive] ...
Log CAN traffic, printing messages to stdout or to a given
file.
- The remaining arguments will be used for the interface and logger/player
initialisation. For example, `-i vector -c 1
--app-name=MyCanApp` is the equivalent to opening the bus
with `Bus('vector', channel=1, app_name='MyCanApp')
- -h, --help
- show this help message and exit
- -c CHANNEL, --channel
CHANNEL
- Most backend interfaces require some sort of channel. For example with the
serial interface the channel might be a rfcomm device:
"/dev/rfcomm0". With the socketcan interface valid channel
examples include: "can0", "vcan0".
- -i
{canalystii,cantact,etas,gs_usb,iscan,ixxat,kvaser,neousys,neovi,nican,nixnet,pcan,robotell,seeedstudio,serial,slcan,socketcan,socketcand,systec,udp_multicast,usb2can,vector,virtual},
--interface
{canalystii,cantact,etas,gs_usb,iscan,ixxat,kvaser,neousys,neovi,nican,nixnet,pcan,robotell,seeedstudio,serial,slcan,socketcan,socketcand,systec,udp_multicast,usb2can,vector,virtual}
- Specify the backend CAN interface to use. If left blank, fall back to
reading from configuration files.
- -b BITRATE, --bitrate
BITRATE
- Bitrate to use for the CAN bus.
- --fd
- Activate CAN-FD support
- --data_bitrate
DATA_BITRATE
- Bitrate to use for the data phase in case of CAN-FD.
- -f LOG_FILE,
--file_name LOG_FILE
- Path and base log filename, for supported types see can.Logger.
- -a, --append
- Append to the log file if it already exists.
- -s FILE_SIZE,
--file_size FILE_SIZE
- Maximum file size in bytes. Rotate log file when size threshold is
reached. (The resulting file sizes will be consistent, but are not
guaranteed to be exactly what is specified here due to the rollover
conditions being logger implementation specific.)
- -v
- How much information do you want to see at the command line? You can add
several of these e.g., -vv is DEBUG
- --filter
{<can_id>:<can_mask>,<can_id>~<can_mask>}
[{<can_id>:<can_mask>,<can_id>~<can_mask>}
...]
- R|Space separated CAN filters for the given CAN interface:
<can_id>:<can_mask> (matches when <received_can_id>
& mask == can_id & mask) <can_id>~<can_mask> (matches
when <received_can_id> & mask != can_id & mask) Fx to show
only frames with ID 0x100 to 0x103 and 0x200 to 0x20F: python3 -m
can.viewer -f 100:7FC 200:7F0 Note that the ID and mask are always
interpreted as hex values
- --active
- Start the bus as active, this is applied by default.
- --passive
- Start the bus as passive.