Scroll to navigation

CANGEN(1) User Commands CANGEN(1)

NAME

cangen - manual page for cangen 2023.03-1

SYNOPSIS

cangen [options] <CAN interface>

DESCRIPTION

cangen - CAN frames generator.

OPTIONS

(gap in milli seconds - default: 200 ms)
(use absolute time for gap)
(use SO_TXTIME)
(start time (UTC nanoseconds))
(set SO_MARK to <id>, default 1)
(generate extended frame mode (EFF) CAN frames)
(generate CAN FD CAN frames)
(generate CAN FD CAN frames with bitrate switch (BRS))
(generate CAN FD CAN frames with error state (ESI))
(generate RTR frames)
-8
(allow DLC values greater then 8 for Classic CAN frames)
(mix -e -f -b -E -R frames)
(CAN ID generation mode - see below)
(CAN data length code (dlc) generation mode - see below)
(CAN data (payload) generation mode - see below)
(poll on -ENOBUFS to write frames with <timeout> ms)
(terminate after <count> CAN frames - default infinite)
(ignore -ENOBUFS return values on write() syscalls)
(disable local loopback of generated CAN frames)
(number of messages to send in burst, default 1)
(increment verbose level for printing sent CAN frames)

Generation modes:

'r'
=> random values (default)
'e'
=> random values, even ID
'o'
=> random values, odd ID
'i'
=> increment values
<value> => fixed value (in hexadecimal for -I and -D)
=> nibbles written as 'x' are randomized (only -D)

The gap value (in milliseconds) may have decimal places, e.g. '-g 4.73' When incrementing the CAN data the data length code minimum is set to 1. CAN IDs and data content are given and expected in hexadecimal values.

EXAMPLES

cangen vcan0 -g 4 -I 42A -L 1 -D i -v -v

(fixed CAN ID and length, inc. data)

cangen vcan0 -e -L i -v -v -v

(generate EFF frames, incr. length)

cangen vcan0 -D 11223344DEADBEEF -L 8

(fixed CAN data payload and length)

cangen vcan0 -D 11xx3344DEADBEEF -L 8

(fixed CAN data payload where 2. byte is randomized, fixed length)

cangen vcan0 -I 555 -D CCCCCCCCCCCCCCCC -L 8 -g 3.75

(generate a fix busload without bit-stuffing effects)

cangen vcan0 -g 0 -i -x

(full load test ignoring -ENOBUFS)

cangen vcan0 -g 0 -p 10 -x

(full load test with polling, 10ms timeout)

cangen vcan0

(my favourite default :)
March 2023 cangen 2023.03-1