X-Git-Url: https://sigrok.org/gitweb/?p=sigrok-cli.git;a=blobdiff_plain;f=doc%2Fsigrok-cli.1;h=eac5942df7d0ebee19607133b4c660db2371cb43;hp=2e60c9f4bc02c8cf7a9969752ce468153d21a020;hb=65f903f911c08beefb1573c54cbadf821f5ce1f3;hpb=66d5560b7b93c877b9edd2dc4ffe71072a05e5db diff --git a/doc/sigrok-cli.1 b/doc/sigrok-cli.1 index 2e60c9f..eac5942 100644 --- a/doc/sigrok-cli.1 +++ b/doc/sigrok-cli.1 @@ -1,4 +1,4 @@ -.TH SIGROK\-CLI 1 "May 04, 2014" +.TH SIGROK\-CLI 1 "September 13, 2017" .SH "NAME" sigrok\-cli \- Command-line client for the sigrok software .SH "SYNOPSIS" @@ -22,12 +22,16 @@ Show a help text and exit. .B "\-V, \-\-version" Show .B sigrok-cli -version, and information about supported hardware drivers, input file +version and the versions of libraries used. +.TP +.B "\-L, \-\-list-supported" +Show information about supported hardware drivers, input file formats, output file formats, and protocol decoders. .TP \fB\-d, \-\-driver\fP A driver must always be selected (unless doing a global scan). Use the -\fB-V\fP option to get a list of available drivers. +.BR "\-L " ( "\-\-list-supported" ")" +option to get a list of available drivers. .sp Drivers can take options, in the form \fBkey=value\fP separated by colons. @@ -73,7 +77,7 @@ When loading an input file, assume it's in the specified format. If this option is not supplied (in addition to .BR \-\-input\-file ), sigrok-cli attempts to autodetect the file format of the input file. Use the -.B \-V +.BR "\-L " ( "\-\-list-supported" ")" option to see a list of available input formats. .sp The format name may optionally be followed by a colon-separated list of @@ -89,26 +93,14 @@ option. .TP .BR "\-O, \-\-output\-format " Set the output format to use. Use the -.B \-V +.BR "\-L " ( "\-\-list-supported" ")" option to see a list of available output formats. .sp The format name may optionally be followed by a colon-separated list of options, where each option takes the form .BR "key=value" . .sp -Supported formats currently include -.BR bits , -.BR hex , -.BR ascii , -.BR binary , -.BR vcd , -.BR ols , -.BR gnuplot , -.BR chronovu-la8 , -.BR csv ", and" -.BR analog . -.sp -The +For example, the .B bits or .B hex @@ -181,7 +173,7 @@ A rising or falling value on the pin. An effectively corresponds to .BR 01 . .br -.BR "c" : +.BR "e" : Any kind of change on a pin (either a rising or a falling edge). .sp Not every device supports all of these trigger types. Use the \fB\-\-show\fP @@ -198,7 +190,7 @@ nonetheless). This option allows the user to specify a comma-separated list of protocol decoders to be used in this session. The decoders are specified by their ID, as shown in the -.B \-\-version +.BR "\-L " ( "\-\-list-supported" ")" output. .sp Example: @@ -237,48 +229,36 @@ is an option supported by the protocol decoder. Additionally, the user tells sigrok to decode the SPI protocol using channel 1 as MISO signal for SPI, channel 5 as MOSI, channel 3 as CLK, and channel 0 as CS# signal. -.TP -.BR "\-S, \-\-protocol\-decoder\-stack " -This option allows the user to specify a protocol decoder stack, i.e. -the way in which one protocol decoder's output gets piped into another -protocol decoder. If not specified, the stack will be set up in the same -order in which the protocol decoders were given with the -.B \-\-protocol-decoders -option. .sp -The decoders are specified by their ID, as shown in the -.B \-\-version -output. In addition to the -.B \-S -option, all protocol decoders that are used in a stack, must also be specified -(together with their options, if any) using the -.B \-P -parameter. +Notice that the +.B sigrok\-cli +application does not support "name matching". Instead it's assumed that the +traces in the input stream match the order of the decoder's input signals, +or that users explicitly specify the input channel to decoder signal mapping. +.br +.sp +When multiple decoders are specified in the same +.BR -P +option, they will be stacked on top of each other in the specified order. .sp Example: .sp $ -.B "sigrok\-cli \-i \-P i2c:sda=4:scl=7,rtc8564" +.B "sigrok\-cli \-i \-P i2c,eeprom24xx" .br -.B " \-S i2c,rtc8564" -.sp -In this example, the -.B \-S -option specifies that the output of the -.BR i2c " decoder" -is piped into the -.BR rtc8564 " decoder," -i.e., the -.BR rtc8564 " decoder" -is stacked on top of the -.BR i2c " decoder." -.sp -The respective protocol decoder options and channel name/number assignments -must be given using the -.B \-P -option (you cannot specify them in the -.B \-S -option). + $ +.B "sigrok\-cli \-i \-P uart:baudrate=31250,midi" +.sp +When multiple +.BR -P +options are specified, each of them creates one decoder stack, which +executes in parallel to other decoder stacks. +.sp +Example: +.sp + $ +.B "sigrok\-cli \-i \-P uart:tx=D0:rx=D1 \-P timing:data=D2" +.sp .TP .BR "\-A, \-\-protocol\-decoder\-annotations " By default, only the stack's topmost protocol decoder's annotation output is @@ -311,6 +291,47 @@ annotation each, by separating them with commas: .br .B " \-A i2c=data-read:data-write,edid" .TP +.BR "\-M, \-\-protocol\-decoder\-meta " +When given, show protocol decoder meta output instead of annotations. +The argument is the name of the decoder whose meta output to show. +.sp + $ +.B "sigrok\-cli \-i \-M i2c" +.sp +Not every decoder generates meta output. +.TP +.BR "\-B, \-\-protocol\-decoder\-binary " +When given, decoder "raw" data of various kinds is written to stdout instead +of annotations (this could be raw binary UART/SPI bytes, or WAV files, PCAP +files, PNG files, or anything else; this is entirely dependent on the +decoder and what kinds of binary output make sense for that decoder). +.sp +No other information is printed to stdout, so this is +suitable for piping into other programs or saving to a file. +.sp +Protocol decoders that support binary output publish a list of binary +classes, for example the UART decoder might have "TX" and "RX". To +select TX for output, the argument to this option would be: +.sp + $ +.B "sigrok\-cli \-i \-B uart=tx" +.br +.sp +If only the protocol decoder is specified, without binary class, all classes +are written to stdout: +.sp + $ +.B "sigrok\-cli \-i \-B uart" +.sp +(this is only useful in rare cases, generally you would specify a certain +binary class you're interested in) +.sp +Not every decoder generates binary output. +.TP +.BR "\-\-protocol\-decoder\-samplenum +When given, decoder annotations will include sample numbers, too. +This allows consumers to receive machine readable timing information. +.TP .BR "\-l, \-\-loglevel " Set the libsigrok and libsigrokdecode loglevel. At the moment \fBsigrok-cli\fP doesn't support setting the two loglevels independently. The higher the @@ -342,10 +363,14 @@ need a serial port specified: $ .B "sigrok\-cli \-\-driver ols:conn=/dev/ttyACM0 \-\-show .sp -To view the documentation for a protocol decoder: +This also works for protocol decoders, input modules and output modules: .sp $ -.B "sigrok\-cli \-\-protocol-decoders i2c \-\-show +.B "sigrok\-cli \-\-protocol\-decoders i2c \-\-show + $ +.B "sigrok\-cli \-\-input\-format csv \-\-show + $ +.B "sigrok\-cli \-\-output\-format bits \-\-show .TP .B "\-\-scan" Scan for devices that can be detected automatically. @@ -404,6 +429,11 @@ frames, then quit. .BR "\-\-continuous" Sample continuously until stopped. Not all devices support this. .TP +.BR "\-\-get " +Get the value of +.B +from the specified device and print it. +.TP .BR "\-\-set" Set one or more variables specified with the \fB\-\-config\fP option, without doing any acquisition.