.\" DO NOT MODIFY THIS FILE!  It was generated by help2man 1.47.5.
.TH CANGEN "1" "February 2018" "cangen 2018.02.0-1" "User Commands"
.SH NAME
cangen \- manual page for cangen 2018.02.0-1
.SH SYNOPSIS
.B cangen
[\fI\,options\/\fR] \fI\,<CAN interface>\/\fR
.SH DESCRIPTION
cangen \- CAN frames generator for testing purposes.
.PP
cangen: generate CAN frames
.SH OPTIONS
.TP
\fB\-g\fR <ms>
(gap in milli seconds \- default: 200 ms)
.TP
\fB\-e\fR
(generate extended frame mode (EFF) CAN frames)
.TP
\fB\-f\fR
(generate CAN FD CAN frames)
.TP
\fB\-b\fR
(generate CAN FD CAN frames with bitrate switch (BRS))
.TP
\fB\-R\fR
(send RTR frame)
.TP
\fB\-m\fR
(mix \fB\-e\fR \fB\-f\fR \fB\-b\fR \fB\-R\fR frames)
.TP
\fB\-I\fR <mode>
(CAN ID generation mode \- see below)
.TP
\fB\-L\fR <mode>
(CAN data length code (dlc) generation mode \- see below)
.TP
\fB\-D\fR <mode>
(CAN data (payload) generation mode \- see below)
.TP
\fB\-p\fR <timeout>
(poll on \fB\-ENOBUFS\fR to write frames with <timeout> ms)
.TP
\fB\-n\fR <count>
(terminate after <count> CAN frames \- default infinite)
.TP
\fB\-i\fR
(ignore \fB\-ENOBUFS\fR return values on write() syscalls)
.TP
\fB\-x\fR
(disable local loopback of generated CAN frames)
.TP
\fB\-v\fR
(increment verbose level for printing sent CAN frames)
.SS "Generation modes:"
.TP
\&'r'
=> random values (default)
.TP
\&'i'
=> increment values
.TP
<hexvalue>
=> fix value using <hexvalue>
.PP
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.
.SH EXAMPLES
cangen vcan0 \-g 4 \-I 42A \-L 1 \-D i \-v \-v
.IP
(fixed CAN ID and length, inc. data)
.PP
cangen vcan0 \-e \-L i \-v \-v \-v
.IP
(generate EFF frames, incr. length)
.PP
cangen vcan0 \-D 11223344DEADBEEF \-L 8
.IP
(fixed CAN data payload and length)
.PP
cangen vcan0 \-g 0 \-i \-x
.IP
(full load test ignoring \-ENOBUFS)
.PP
cangen vcan0 \-g 0 \-p 10 \-x
.IP
(full load test with polling, 10ms timeout)
.PP
cangen vcan0
.IP
(my favourite default :)
