]> sigrok.org Git - sigrok-cli.git/blame - doc/sigrok-cli.1
doc: update sigrok-cli(1) for channel assignment to decoder inputs
[sigrok-cli.git] / doc / sigrok-cli.1
CommitLineData
9d9f7b82 1.TH SIGROK\-CLI 1 "April 07, 2023"
43e5747a 2.SH "NAME"
53155b2f 3sigrok\-cli \- Command-line client for the sigrok software
43e5747a 4.SH "SYNOPSIS"
53155b2f 5.B sigrok\-cli [OPTIONS] [COMMAND]
43e5747a 6.SH "DESCRIPTION"
10d98b47
UH
7\fBsigrok\-cli\fP is a cross-platform command line utility for the
8\fBsigrok\fP software.
43e5747a 9.PP
10d98b47
UH
10It cannot display graphical output, but is still sufficient to run through
11the whole process of hardware initialization, acquisition, protocol decoding
12and saving the session.
43e5747a
UH
13.PP
14It is useful for running on remote or embedded systems, netbooks, PDAs,
15and for various other use-cases. It can display samples on standard output or
16save them in various file formats.
53155b2f 17.SH OPTIONS
43e5747a 18.TP
43e5747a
UH
19.B "\-h, \-\-help"
20Show a help text and exit.
21.TP
7949dca0
UH
22.B "\-V, \-\-version"
23Show
a0cfa735 24.B sigrok\-cli
6293db8a
UH
25version and the versions of libraries used.
26.TP
a0cfa735 27.B "\-L, \-\-list\-supported"
6293db8a 28Show information about supported hardware drivers, input file
7949dca0
UH
29formats, output file formats, and protocol decoders.
30.TP
c45dd41c
UH
31.B "\-\-list\-supported\-wiki"
32Show information about supported protocol decoders in MediaWiki syntax.
33This is generally only used by developers to easily update the list of
34supported protocol decoders in the sigrok wiki.
35.TP
b5ac81ad 36\fB\-d, \-\-driver\fP <drivername>
77525a84
GS
37Unless doing a global scan, users typically select one of the available
38drivers. This can speedup program start, and can avoid false matches for
39ambiguous configurations. Selecting a driver also allows to pass more
40driver specific options. Use the
c45dd41c 41.BR "\-L " ( "\-\-list\-supported" ")"
c1865eb5 42option to get a list of available drivers.
53155b2f 43.sp
10d98b47
UH
44Drivers can take options, in the form \fBkey=value\fP
45separated by colons.
46.sp
47Drivers communicating with hardware via a serial port always need the port
48specified as the \fBconn\fP option. For example, to use the
49Openbench Logic Sniffer:
53155b2f 50.sp
a0cfa735 51.RB " $ " "sigrok\-cli \-\-driver=ols:conn=/dev/ttyACM0" " [...]"
53155b2f 52.sp
10d98b47 53Some USB devices don't use a unique VendorID/ProductID combination, and thus
d6469268
GS
54need that specified as well. Notice that colons are used to separate the
55driver name from the \fBconn\fP option, thus colons cannot be used within the
56\fBconn\fP option's argument. To select a specific USB device, use either
57\fBVendorID.ProductID\fP or \fBbus.address\fP:
53155b2f 58.sp
a0cfa735
UH
59USB \fBVendorID.ProductID\fP example:
60.sp
61.RB " $ " "sigrok\-cli \-\-driver=uni\-t\-ut61e:conn=1a86.e008" " [...]"
62.sp
63USB \fBbus.address\fP example:
64.sp
65.RB " $ " "sigrok\-cli \-\-driver=uni\-t\-ut61e:conn=4.6" " [...]"
43e5747a 66.TP
b20ea789
GS
67.B "\-D, \-\-dont\-scan"
68Do not automatically scan for device drivers in the absence of a
69.BR "\-d " ( "\-\-driver" )
70specification.
71.TP
a0cfa735 72.BR "\-c, \-\-config " <deviceoption>
53155b2f 73A colon-separated list of device options, where each option takes the form
1b4b6a7c 74.BR key=value .
0e2f95c4
GS
75Multiple occurances of the
76.B \-\-config
77option are supported.
78The first item in the list of options can take the form
79.B channel_group=<name>
80which would override the
81.B \-\-channel\-group
82specification for this list of options. Other option lists in other
83.B \-\-config
84occurances are not affected by this list's channel group name.
85.sp
10d98b47
UH
86For example, to set the samplerate to 1MHz on a device supported by the
87fx2lafw driver, you might specify
1b4b6a7c 88.sp
a0cfa735 89.RB " $ " "sigrok\-cli \-d fx2lafw \-\-config samplerate=1m" " [...]"
1b4b6a7c 90.sp
53155b2f
BV
91Samplerate is an option common to most logic analyzers. The argument specifies
92the samplerate in Hz. You can also specify the samplerate in kHz, MHz or GHz.
1b4b6a7c
UH
93The following are all equivalent:
94.sp
a0cfa735 95.RB " $ " "sigrok\-cli \-d fx2lafw \-\-config samplerate=1000000" " [...]"
1b4b6a7c 96.sp
a0cfa735 97.RB " $ " "sigrok\-cli \-d fx2lafw \-\-config samplerate=1m" " [...]"
1b4b6a7c 98.sp
a0cfa735 99.RB " $ " "sigrok\-cli \-d fx2lafw \-\-config \(dqsamplerate=1 MHz\(dq" " [...]"
0e2f95c4
GS
100.sp
101These examples specify options within a channel group.
102The first two are equivalent.
103.sp
104.RB " $ " "sigrok\-cli \-d demo \-\-channel\-group Logic \-\-config pattern=random [...]"
105.sp
106.RB " $ " "sigrok\-cli \-d demo \-\-config channel_group=Logic:pattern=random [...]"
107.sp
108.RB " $ " "sigrok\-cli \-d demo \-\-config samplerate=1m \-\-config channel_group=Logic:pattern=random [...]"
1b4b6a7c 109.TP
43e5747a 110.BR "\-i, \-\-input\-file " <filename>
a0cfa735
UH
111Load input from a file instead of a hardware device. You can specify
112"-" to use stdin as input. If the
43e5747a 113.B \-\-input\-format
a0cfa735 114option is not supplied, sigrok\-cli attempts to autodetect the file format of
43e5747a 115the input file.
a0cfa735
UH
116.sp
117Example for loading a sigrok session file:
118.sp
119.RB " $ " "sigrok\-cli \-i example.sr" " [...]"
120.sp
121Example for loading a WAV file (autodetection of input format):
122.sp
123.RB " $ " "sigrok\-cli \-i example.wav" " [...]
124.sp
125Example for loading a VCD file from stdin (autodetection of input format):
126.sp
127.RB " $ " "cat example.vcd | sigrok\-cli \-i \-" " [...]
43e5747a
UH
128.TP
129.BR "\-I, \-\-input\-format " <format>
130When loading an input file, assume it's in the specified format. If this
131option is not supplied (in addition to
132.BR \-\-input\-file ),
943d0c08 133sigrok-cli attempts to autodetect the file format of the input file. Use the
a0cfa735 134.BR "\-L " ( "\-\-list\-supported" ")"
10d98b47
UH
135option to see a list of available input formats.
136.sp
137The format name may optionally be followed by a colon-separated list of
138options, where each option takes the form
943d0c08 139.BR "key=value" .
a0cfa735
UH
140.sp
141Example for loading a binary file with options:
142.sp
143.RB " $ " "sigrok\-cli \-i example.bin"
144.br
145.BR " \-I binary:numchannels=4:samplerate=1mhz" " [...]"
43e5747a
UH
146.TP
147.BR "\-o, \-\-output\-file " <filename>
148Save output to a file instead of writing it to stdout. The default format
149used when saving is the sigrok session file format. This can be changed with
150the
76ae913d 151.B \-\-output\-format
7949dca0 152option.
a0cfa735
UH
153.sp
154Example for saving data in the sigrok session format:
155.sp
156.RB " $ " "sigrok\-cli " "[...] " "\-o example.sr"
7949dca0 157.TP
a0cfa735 158.BR "\-O, \-\-output\-format " <format>
7949dca0 159Set the output format to use. Use the
a0cfa735 160.BR "\-L " ( "\-\-list\-supported" ")"
10d98b47
UH
161option to see a list of available output formats.
162.sp
163The format name may optionally be followed by a colon-separated list of
164options, where each option takes the form
7949dca0
UH
165.BR "key=value" .
166.sp
c1865eb5 167For example, the
7949dca0
UH
168.B bits
169or
170.B hex
171formats, for an ASCII bit or ASCII hexadecimal display, can take a "width" option, specifying the number of samples (in bits) to display per line. Thus
a0cfa735 172.B "\-O hex:width=128"
7949dca0
UH
173will display 128 bits per line, in hexadecimal:
174.sp
10d98b47
UH
175 0:ffff ffff ffff ffff ffff ffff ffff ffff
176 1:ff00 ff00 ff00 ff00 ff00 ff00 ff00 ff00
7949dca0 177.sp
029d73fe 178The lines always start with the channel number (or name, if defined), followed by a colon. If no format is specified, it defaults to
7949dca0
UH
179.BR bits:width=64 ,
180like this:
181.sp
10d98b47
UH
182 0:11111111 11111111 11111111 11111111 [...]
183 1:11111111 00000000 11111111 00000000 [...]
a0cfa735 184.sp
f5735c5e 185Example for saving data in the CSV format with options:
a0cfa735 186.sp
f5735c5e
GS
187.RB " $ " "sigrok\-cli " "[...] " "\-o example.csv \-O csv:dedup:header=false"
188.sp
189Notice that boolean options are \fBtrue\fP when no value gets specified.
43e5747a 190.TP
3dfbfbc8 191.BR "\-C, \-\-channels " <channellist>
029d73fe 192A comma-separated list of channels to be used in the session.
43e5747a 193.sp
029d73fe 194Note that sigrok always names the channels according to how they're shown on
a0cfa735 195the enclosure of the hardware. If your logic analyzer numbers the channels 0\-15,
029d73fe 196that's how you must specify them with this option. An oscilloscope's channels
10d98b47 197would generally be referred to as "CH1", "CH2", and so on.
029d73fe 198Use the \fB\-\-show\fP option to see a list of channel names for your device.
53155b2f 199.sp
029d73fe
UH
200The default is to use all the channels available on a device. You can name
201a channel like this:
43e5747a 202.BR "1=CLK" .
029d73fe 203A range of channels can also be given, in the form
43e5747a
UH
204.BR "1\-5" .
205.sp
206Example:
207.sp
10d98b47
UH
208.RB " $ " "sigrok\-cli \-\-driver fx2lafw \-\-samples 100"
209.br
3dfbfbc8 210.B " \-\-channels 1=CLK,2\-4,7"
43e5747a
UH
211.br
212 CLK:11111111 11111111 11111111 11111111 [...]
213 2:11111111 11111111 11111111 11111111 [...]
214 3:11111111 11111111 11111111 11111111 [...]
215 4:11111111 11111111 11111111 11111111 [...]
216 7:11111111 11111111 11111111 11111111 [...]
217.sp
218The comma-separated list is processed from left to right, i.e. items farther
219to the right override previous items. For example
bf836932 220.B "1=CS,CS=MISO"
029d73fe 221will set the name of channel 1 to
43e5747a 222.BR "MISO" .
43e5747a 223.TP
ca50f4b3 224.BR "\-g, \-\-channel\-group "<channel\ group>
a0cfa735
UH
225Specify the channel group to operate on. Some devices organize channels into
226groups, the settings of which can only be changed as a group. The list of
227channel groups, if any, is displayed with the \fB\-\-show\fP command.
228.sp
f5735c5e 229Examples:
a0cfa735
UH
230.sp
231.RB " $ " "sigrok\-cli \-g CH1" " [...]"
f5735c5e
GS
232.sp
233.RB " $ " "sigrok\-cli \-d demo \-g Logic \-c pattern=graycode" " [...]"
0e2f95c4
GS
234.sp
235Channel group specifications in
236.B \-\-get
237or
238.B \-\-config
239options take precedence over channel group names in
240.B \-\-channel\-group
241so that a single
242.B sigrok\-cli
243invocation can support the query or manipulation of multiple device options
244which reside in different channel groups.
31f9318a 245.TP
43e5747a
UH
246.BR "\-t, \-\-triggers " <triggerlist>
247A comma-separated list of triggers to use, of the form
029d73fe
UH
248.BR "<channel>=<trigger>" .
249You can use the name or number of the channel, and the trigger itself is a
43e5747a
UH
250series of characters:
251.sp
252.BR "0 or 1" :
253A low or high value on the pin.
254.br
255.BR "r or f" :
256A rising or falling value on the pin. An
257.B r
258effectively corresponds to
259.BR 01 .
260.br
f99038b4 261.BR "e" :
85f2ddbb 262Any kind of change on a pin (either a rising or a falling edge).
43e5747a 263.sp
10d98b47
UH
264Not every device supports all of these trigger types. Use the \fB\-\-show\fP
265command to see which triggers your device supports.
43e5747a 266.TP
a0cfa735 267.BR "\-w, \-\-wait\-trigger"
10d98b47
UH
268Don't output any sample data (even if it's actually received from the
269hardware) before the trigger condition is met. In other words, do not output
270any pre-trigger data. This option is useful if you don't care about the data
271that came before the trigger (but the hardware delivers this data to sigrok
272nonetheless).
43e5747a 273.TP
b5ac81ad 274.BR "\-P, \-\-protocol\-decoders " <list>
85f2ddbb
UH
275This option allows the user to specify a comma-separated list of protocol
276decoders to be used in this session. The decoders are specified by their
277ID, as shown in the
a0cfa735 278.BR "\-L " ( "\-\-list\-supported" ")"
85f2ddbb
UH
279output.
280.sp
281Example:
282.sp
283 $
b5ac81ad 284.B "sigrok\-cli \-i <file.sr> \-P i2c"
85f2ddbb
UH
285.sp
286Each protocol decoder can optionally be followed by a colon-separated list
287of options, where each option takes the form
288.BR "key=value" .
289.sp
290Example:
291.sp
292 $
8791df07
UH
293.B "sigrok\-cli \-i <file.sr> "
294.br
525f4814 295.B " \-P uart:baudrate=115200:parity=odd"
85f2ddbb
UH
296.sp
297The list of supported options depends entirely on the protocol decoder. Every
298protocol decoder has different options it supports.
299.sp
300Any "options" specified for a protocol decoder which are not actually
029d73fe 301supported options, will be interpreted as being channel name/number assignments.
85f2ddbb
UH
302.sp
303Example:
304.sp
305 $
306.B "sigrok\-cli \-i <file.sr>"
307.br
bf836932 308.B " \-P spi:wordsize=9:miso=1:mosi=5:clk=3:cs=0"
85f2ddbb
UH
309.sp
310In this example,
311.B wordsize
312is an option supported by the
313.B spi
9d9f7b82 314protocol decoder. Additionally, the user requests sigrok to decode the SPI
029d73fe 315protocol using channel 1 as MISO signal for SPI, channel 5 as MOSI, channel 3
bf836932 316as CLK, and channel 0 as CS# signal.
65f903f9 317.sp
9d9f7b82 318The
65f903f9 319.B sigrok\-cli
9d9f7b82
GS
320application can automatically assign logic channels to decoder inputs
321in their strict channel index order (by means of the
322.B auto_index
323keyword), or can automatically assign logic channels to decoder inputs
324when their names match (case insensitive match,
325.B auto_names
326keyword). Users need to explicitly request this assignment, the default
327behaviour is to not automatically assign any signals.
328.sp
329Example:
330.sp
331 $
332.B "sigrok\-cli \-i <file.sr>"
333.br
334.B " \-P ieee488:assign_channels=auto_names"
e4b7762f
GS
335.br
336.sp
337When multiple decoders are specified in the same
338.BR -P
339option, they will be stacked on top of each other in the specified order.
340.sp
341Example:
342.sp
343 $
344.B "sigrok\-cli \-i <file.sr> \-P i2c,eeprom24xx"
345.br
346 $
347.B "sigrok\-cli \-i <file.sr> \-P uart:baudrate=31250,midi"
348.sp
349When multiple
350.BR -P
351options are specified, each of them creates one decoder stack, which
352executes in parallel to other decoder stacks.
353.sp
354Example:
355.sp
356 $
357.B "sigrok\-cli \-i <file.sr> \-P uart:tx=D0:rx=D1 \-P timing:data=D2"
358.sp
85f2ddbb 359.TP
b6bd032d 360.BR "\-A, \-\-protocol\-decoder\-annotations " <annotations>
87d526cf
UH
361By default, all annotation output of all protocol decoders is
362shown. With this option a specific decoder's annotations can be selected for
363display, by specifying the decoder ID:
7fb87027
BV
364.sp
365 $
a0cfa735 366.B "sigrok\-cli \-i <file.sr> \-P i2c,i2cfilter,edid \-A i2c"
7fb87027 367.sp
6c5438fe 368If a protocol decoder has multiple annotation classes, you can also specify
790b0261 369which one of them to show by specifying its short description like this:
7fb87027
BV
370.sp
371 $
b5ac81ad 372.B "sigrok\-cli \-i <file.sr> \-P i2c,i2cfilter,edid"
7fb87027 373.br
a0cfa735 374.B " \-A i2c=data\-read"
790b0261 375.sp
6c5438fe 376Select multiple annotation classes by separating them with a colon:
790b0261
BV
377.sp
378 $
379.B "sigrok\-cli \-i <file.sr> \-P i2c,i2cfilter,edid"
380.br
a0cfa735 381.B " \-A i2c=data\-read:data\-write"
7fb87027 382.sp
b7360ee6
GS
383Annotation row names will resolve to their respective list of classes.
384Row and class names can be used in combination. When names are ambiguous
385then class names take precedence.
386.sp
387 $
388.B "sigrok\-cli \-i <file.sr> \-P i2c"
389.br
390.B " \-A i2c=addr\-data:warnings"
391.sp
392You can also select multiple protocol decoders, with optionally selected
393annotation classes each, by separating them with commas:
7fb87027
BV
394.sp
395 $
b5ac81ad 396.B "sigrok\-cli \-i <file.sr> \-P i2c,i2cfilter,edid"
7fb87027 397.br
a0cfa735 398.B " \-A i2c=data\-read:data\-write,edid"
7fb87027 399.TP
b0f1c540
BV
400.BR "\-M, \-\-protocol\-decoder\-meta " <pdname>
401When given, show protocol decoder meta output instead of annotations.
402The argument is the name of the decoder whose meta output to show.
403.sp
404 $
405.B "sigrok\-cli \-i <file.sr> \-M i2c"
406.sp
407Not every decoder generates meta output.
408.TP
409.BR "\-B, \-\-protocol\-decoder\-binary " <binaryspec>
410When given, decoder "raw" data of various kinds is written to stdout instead
411of annotations (this could be raw binary UART/SPI bytes, or WAV files, PCAP
412files, PNG files, or anything else; this is entirely dependent on the
413decoder and what kinds of binary output make sense for that decoder).
414.sp
415No other information is printed to stdout, so this is
416suitable for piping into other programs or saving to a file.
417.sp
418Protocol decoders that support binary output publish a list of binary
419classes, for example the UART decoder might have "TX" and "RX". To
420select TX for output, the argument to this option would be:
421.sp
422 $
423.B "sigrok\-cli \-i <file.sr> \-B uart=tx"
424.br
425.sp
426If only the protocol decoder is specified, without binary class, all classes
427are written to stdout:
428.sp
429 $
430.B "sigrok\-cli \-i <file.sr> \-B uart"
431.sp
432(this is only useful in rare cases, generally you would specify a certain
433binary class you're interested in)
434.sp
435Not every decoder generates binary output.
436.TP
8aafb57c
GS
437.BR "\-\-protocol\-decoder\-samplenum
438When given, decoder annotations will include sample numbers, too.
439This allows consumers to receive machine readable timing information.
440.TP
625606db
SS
441.BR "\-\-protocol\-decoder\-ann\-class
442When given, decoder annotations will include annotation class names.
443.TP
9a7a9200
GS
444.BR "\-\-protocol\-decoder\-jsontrace
445When given, decoder output uses the Google Trace Event format (JSON).
446Which can be inspected in web browsers or other viewers.
447.TP
53155b2f 448.BR "\-l, \-\-loglevel " <level>
a0cfa735 449Set the libsigrok and libsigrokdecode loglevel. At the moment \fBsigrok\-cli\fP
10d98b47 450doesn't support setting the two loglevels independently. The higher the
53155b2f
BV
451number, the more debug output will be printed. Valid loglevels are:
452.sp
453\fB0\fP None
454.br
455\fB1\fP Error
456.br
457\fB2\fP Warnings
458.br
459\fB3\fP Informational
460.br
461\fB4\fP Debug
462.br
463\fB5\fP Spew
464.TP
465.B "\-\-show"
466.br
10d98b47
UH
467Show information about the selected option. For example, to see options for a
468connected fx2lafw device:
53155b2f
BV
469.sp
470 $
471.B "sigrok\-cli \-\-driver fx2lafw \-\-show
472.sp
10d98b47
UH
473In order to properly get device options for your hardware, some drivers might
474need a serial port specified:
53155b2f
BV
475.sp
476 $
477.B "sigrok\-cli \-\-driver ols:conn=/dev/ttyACM0 \-\-show
478.sp
a8b4041a 479This also works for protocol decoders, input modules and output modules:
53155b2f
BV
480.sp
481 $
ad6520c4
BV
482.B "sigrok\-cli \-\-protocol\-decoders i2c \-\-show
483 $
a8b4041a
BV
484.B "sigrok\-cli \-\-input\-format csv \-\-show
485 $
ad6520c4 486.B "sigrok\-cli \-\-output\-format bits \-\-show
b45ae06e
GS
487.sp
488This also works for input files, including optional input format specifications:
489.sp
490 $
491.B "sigrok\-cli \-\-input\-file <file.sr> \-\-show
492 $
493.B "sigrok\-cli \-\-input\-file <file.vcd> \-\-input\-format vcd \-\-show
53155b2f 494.TP
b5ac81ad
BV
495.B "\-\-scan"
496Scan for devices that can be detected automatically.
10d98b47
UH
497.sp
498Example:
499.sp
500 $
b5ac81ad 501.B "sigrok\-cli \-\-scan
10d98b47
UH
502.br
503 The following devices were found:
504.br
a0cfa735 505 demo \- Demo device with 12 channels: D0 D1 D2 D3 D4 D5 D6 D7 A0 A1 A2 A3
10d98b47 506.br
a0cfa735 507 fx2lafw:conn=3.26 \- CWAV USBee SX with 8 channels: 0 1 2 3 4 5 6 7
10d98b47
UH
508.sp
509However, not all devices are auto-detectable (e.g. serial port based ones).
510For those you'll have to provide a \fBconn\fP option, see above.
511.sp
512 $
a0cfa735 513.B "sigrok\-cli \-\-driver digitek\-dt4000zc:conn=/dev/ttyUSB0 \-\-scan
10d98b47
UH
514.br
515 The following devices were found:
516.br
029d73fe 517 Digitek DT4000ZC with 1 channel: P1
53155b2f 518.TP
43e5747a
UH
519.BR "\-\-time " <ms>
520Sample for
521.B <ms>
10d98b47
UH
522milliseconds, then quit.
523.sp
bf836932
UH
524You can optionally follow the number by \fBs\fP to specify the time to
525sample in seconds.
10d98b47
UH
526.sp
527For example,
43e5747a
UH
528.B "\-\-time 2s"
529will sample for two seconds.
530.TP
531.BR "\-\-samples " <numsamples>
532Acquire
533.B <numsamples>
534samples, then quit.
10d98b47
UH
535.sp
536You can optionally follow the number by \fBk\fP, \fBm\fP, or \fBg\fP to
537specify the number of samples in kilosamples, megasamples, or gigasamples,
538respectively.
539.sp
540For example,
541.B "\-\-samples 3m"
542will acquire 3000000 samples.
43e5747a 543.TP
66d5560b
UH
544.BR "\-\-frames " <numframes>
545Acquire
546.B <numframes>
547frames, then quit.
548.TP
43e5747a
UH
549.BR "\-\-continuous"
550Sample continuously until stopped. Not all devices support this.
2d73284e 551.TP
62a64762
BV
552.BR "\-\-get " <variable>
553Get the value of
554.B <variable>
555from the specified device and print it.
0e2f95c4
GS
556Multiple variable names can be specified and get separated by colon.
557The list of variable names optionally can be preceeded by
558.B "channel_group=<name>"
559which would override the
560.B \-\-channel\-group
561specification.
562Multiple
563.B \-\-get
564occurances are supported in a single
565.B sigrok\-cli
566invocation.
567.sp
568 $
569.B sigrok\-cli \-d demo \-\-get samplerate:averaging \-\-get channel_group=Logic:pattern
62a64762 570.TP
2d73284e 571.BR "\-\-set"
b8656921
UH
572Set one or more variables specified with the \fB\-\-config\fP option, without
573doing any acquisition.
53155b2f 574.SH EXAMPLES
b8656921
UH
575In order to get exactly 100 samples from the connected fx2lafw-supported logic
576analyzer hardware, run the following command:
43e5747a 577.TP
53155b2f 578.B " sigrok\-cli \-\-driver fx2lafw \-\-samples 100"
43e5747a 579.TP
2d73284e 580If you want to sample data for 3 seconds (3000 ms), use:
43e5747a 581.TP
53155b2f 582.B " sigrok\-cli \-\-driver fx2lafw \-\-time 3000"
43e5747a
UH
583.TP
584Alternatively, you can also use:
585.TP
53155b2f 586.B " sigrok\-cli \-\-driver fx2lafw \-\-time 3s"
43e5747a 587.TP
029d73fe 588To capture data from the first 4 channels using the Openbench Logic Sniffer lasting 100ms at 10 MHz starting at the trigger condition
53155b2f 5890:high, 1:rising, 2:low, 3:high, use:
43e5747a 590.TP
53155b2f 591.nf
b5ac81ad 592\fBsigrok\-cli \-\-driver ols:conn=/dev/ttyACM0 \-\-config samplerate=10m \\\fP
3dfbfbc8 593\fB\-\-output\-format bits \-\-channels 0\-3 \-\-wait\-trigger \\\fP
b5ac81ad 594\fB\-\-triggers 0=1,1=r,2=0,3=1 \-\-time 100\fP
2d73284e
BV
595.TP
596To turn on internal logging on a Lascar EL-USB series device:
597.TP
598\fBsigrok\-cli \-\-driver lascar\-el\-usb:conn=10c4.0002 \\\fP
b8656921 599\fB\-\-config datalog=on \-\-set\fP
43e5747a
UH
600.SH "EXIT STATUS"
601.B sigrok\-cli
602exits with 0 on success, 1 on most failures.
394fd9b7
GS
603.SH "ENVIRONMENT"
604.TP
605.B SIGROK_FIRMWARE_DIR
606A single path where to search for firmware images, in addition to a
607builtin list of locations.
608.TP
609.B SIGROK_FIRMWARE_PATH
610Multiple path entries where to search for firmware images, in addition
611to builtin locations.
612.TP
613When decoder support was enabled in the application's configuration:
614.TP
615.B SIGROKDECODE_DIR
616A single path where to search for protocol decoders, in addition to
617a builtin list of locations.
618.TP
619.B SIGROKDECODE_PATH
620Multiple path entries where to search for protocol decoders, in addition
621to builtin locations.
43e5747a 622.SH "SEE ALSO"
b5ac81ad 623\fBpulseview\fP(1)
43e5747a 624.SH "BUGS"
10d98b47
UH
625Please report any bugs via Bugzilla
626.RB "(" http://sigrok.org/bugzilla ")"
627or on the sigrok\-devel mailing list
43e5747a
UH
628.RB "(" sigrok\-devel@lists.souceforge.net ")."
629.SH "LICENSE"
630.B sigrok\-cli
631is covered by the GNU General Public License (GPL). Some portions are
632licensed under the "GPL v2 or later", some under "GPL v3 or later".
633.SH "AUTHORS"
634Please see the individual source code files.
635.PP
636This manual page was written by Uwe Hermann <uwe@hermann\-uwe.de>.
637It is licensed under the terms of the GNU GPL (version 2 or later).