doc/drivers.txt: Rebuilt from comedi
[comedilib.git] / doc / drivers.txt
1 Driver: 8255
2 Description: generic 8255 support
3 Devices: [standard] 8255 (8255)
4 Author: ds
5 Status: works
6 Updated: Fri,  7 Jun 2002 12:56:45 -0700
7
8 The classic in digital I/O.  The 8255 appears in Comedi as a single
9 digital I/O subdevice with 24 channels.  The channel 0 corresponds
10 to the 8255's port A, bit 0; channel 23 corresponds to port C, bit
11 7.  Direction configuration is done in blocks, with channels 0-7,
12 8-15, 16-19, and 20-23 making up the 4 blocks.  The only 8255 mode
13 supported is mode 0.
14
15 You should enable compilation this driver if you plan to use a board
16 that has an 8255 chip.  For multifunction boards, the main driver will
17 configure the 8255 subdevice automatically.
18
19 This driver also works independently with ISA and PCI cards that
20 directly map the 8255 registers to I/O ports, including cards with
21 multiple 8255 chips.  To configure the driver for such a card, the
22 option list should be a list of the I/O port bases for each of the
23 8255 chips.  For example,
24
25   comedi_config /dev/comedi0 8255 0x200,0x204,0x208,0x20c
26
27 Note that most PCI 8255 boards do NOT work with this driver, and
28 need a separate driver as a wrapper.  For those that do work, the
29 I/O port base address can be found in the output of 'lspci -v'.
30
31
32
33
34 Driver: acl7225b
35 Description: Adlink NuDAQ ACL-7225b & compatibles
36 Author: José Luis Sánchez (jsanchezv@teleline.es)
37 Status: testing
38 Devices: [Adlink] ACL-7225b (acl7225b), [ICP] P16R16DIO (p16r16dio)
39
40
41
42 Driver: adl_pci6208
43 Description: ADLink PCI-6208A
44 Devices: [ADLink] PCI-6208A (adl_pci6208)
45 Author: nsyeow <nsyeow@pd.jaring.my>
46 Updated: Fri, 30 Jan 2004 14:44:27 +0800
47 Status: untested
48
49 Configuration Options:
50   none
51
52 References:
53         - ni_660x.c
54         - adl_pci9111.c         copied the entire pci setup section
55         - adl_pci9118.c
56
57
58
59 Driver: adl_pci7230
60 Description: Driver for the Adlink PCI-7230 32 ch. isolated digital io board
61 Devices: [ADLink] PCI-7230 (adl_pci7230)
62 Author: David Fernandez <dfcastelao@gmail.com>
63 Status: experimental
64 Updated: Mon, 14 Apr 2008 15:08:14 +0100
65
66 Configuration Options:
67   [0] - PCI bus of device (optional)
68   [1] - PCI slot of device (optional)
69   If bus/slot is not specified, the first supported
70   PCI device found will be used.
71
72
73
74 Driver: adl_pci7296
75 Description: Driver for the Adlink PCI-7296 96 ch. digital io board
76 Devices: [ADLink] PCI-7296 (adl_pci7296)
77 Author: Jon Grierson <jd@renko.co.uk>
78 Updated: Mon, 14 Apr 2008 15:05:56 +0100
79 Status: testing
80
81 Configuration Options:
82   [0] - PCI bus of device (optional)
83   [1] - PCI slot of device (optional)
84   If bus/slot is not specified, the first supported
85   PCI device found will be used.
86
87
88
89 Driver: adl_pci7432
90 Description: Driver for the Adlink PCI-7432 64 ch. isolated digital io board
91 Devices: [ADLink] PCI-7432 (adl_pci7432)
92 Author: Michel Lachaine <mike@mikelachaine.ca>
93 Status: experimental
94 Updated: Mon, 14 Apr 2008 15:08:14 +0100
95
96 Configuration Options:
97   [0] - PCI bus of device (optional)
98   [1] - PCI slot of device (optional)
99   If bus/slot is not specified, the first supported
100   PCI device found will be used.
101
102
103
104 Driver: adl_pci8164
105 Description: Driver for the Adlink PCI-8164 4 Axes Motion Control board
106 Devices: [ADLink] PCI-8164 (adl_pci8164)
107 Author: Michel Lachaine <mike@mikelachaine.ca>
108 Status: experimental
109 Updated: Mon, 14 Apr 2008 15:10:32 +0100
110
111 Configuration Options:
112   [0] - PCI bus of device (optional)
113   [1] - PCI slot of device (optional)
114   If bus/slot is not specified, the first supported
115   PCI device found will be used.
116
117
118
119 Driver: adl_pci9111
120 Description: Adlink PCI-9111HR
121 Author: Emmanuel Pacaud <emmanuel.pacaud@univ-poitiers.fr>
122 Devices: [ADLink] PCI-9111HR (adl_pci9111)
123 Status: experimental
124
125 Supports:
126
127   - ai_insn read
128   - ao_insn read/write
129   - di_insn read
130   - do_insn read/write
131   - ai_do_cmd mode with the following sources:
132
133     - start_src                 TRIG_NOW
134     - scan_begin_src            TRIG_FOLLOW     TRIG_TIMER      TRIG_EXT
135     - convert_src                               TRIG_TIMER      TRIG_EXT
136     - scan_end_src              TRIG_COUNT
137     - stop_src                  TRIG_COUNT      TRIG_NONE
138
139     The scanned channels must be consecutive and start from 0. They must
140     all have the same range and aref.
141
142 Configuration options:
143
144     [0] - PCI bus number (optional)
145     [1] - PCI slot number (optional)
146
147     If bus/slot is not specified, the first available PCI
148     device will be used.
149
150
151
152
153 Driver: adl_pci9118
154 Description: Adlink PCI-9118DG, PCI-9118HG, PCI-9118HR
155 Author: Michal Dobes <dobes@tesnet.cz>
156 Devices: [ADLink] PCI-9118DG (pci9118dg), PCI-9118HG (pci9118hg),
157   PCI-9118HR (pci9118hr)
158 Status: works
159
160 This driver supports AI, AO, DI and DO subdevices.
161 AI subdevice supports cmd and insn interface,
162 other subdevices support only insn interface.
163 For AI:
164 - If cmd->scan_begin_src=TRIG_EXT then trigger input is TGIN (pin 46).
165 - If cmd->convert_src=TRIG_EXT then trigger input is EXTTRG (pin 44).
166 - If cmd->start_src/stop_src=TRIG_EXT then trigger input is TGIN (pin 46).
167 - It is not neccessary to have cmd.scan_end_arg=cmd.chanlist_len but
168   cmd.scan_end_arg modulo cmd.chanlist_len must by 0.
169 - If return value of cmdtest is 5 then you've bad channel list
170   (it isn't possible mixture S.E. and DIFF inputs or bipolar and unipolar
171   ranges).
172
173 There are some hardware limitations:
174 a) You cann't use mixture of unipolar/bipoar ranges or differencial/single
175    ended inputs.
176 b) DMA transfers must have the length aligned to two samples (32 bit),
177    so there is some problems if cmd->chanlist_len is odd. This driver tries
178    bypass this with adding one sample to the end of the every scan and discard
179    it on output but this cann't be used if cmd->scan_begin_src=TRIG_FOLLOW
180    and is used flag TRIG_WAKE_EOS, then driver switch to interrupt driven mode
181    with interrupt after every sample.
182 c) If isn't used DMA then you can use only mode where
183    cmd->scan_begin_src=TRIG_FOLLOW.
184
185 Configuration options:
186   [0] - PCI bus of device (optional)
187   [1] - PCI slot of device (optional)
188           If bus/slot is not specified, then first available PCI
189           card will be used.
190   [2] - 0= standard 8 DIFF/16 SE channels configuration
191         n= external multiplexer connected, 1<=n<=256
192   [3] - 0=autoselect DMA or EOC interrupts operation
193         1=disable DMA mode
194         3=disable DMA and INT, only insn interface will work
195   [4] - sample&hold signal - card can generate signal for external S&H board
196         0=use SSHO (pin 45) signal is generated in onboard hardware S&H logic
197         0!=use ADCHN7 (pin 23) signal is generated from driver, number
198            say how long delay is requested in ns and sign polarity of the hold
199            (in this case external multiplexor can serve only 128 channels)
200   [5] - 0=stop measure on all hardware errors
201         2|=ignore ADOR - A/D Overrun status
202         8|=ignore Bover - A/D Burst Mode Overrun status
203         256|=ignore nFull - A/D FIFO Full status
204
205
206
207
208 Driver: adq12b
209 Description: driver for MicroAxial ADQ12-B data acquisition and control card
210 Devices: [MicroAxial] ADQ12-B (adq12b)
211 Author: jeremy theler <thelerg@ib.cnea.gov.ar>
212 Updated: Thu, 21 Feb 2008 02:56:27 -0300
213 Status: works
214
215 Driver for the acquisition card ADQ12-B (without any add-on).
216
217  - Analog input is subdevice 0 (16 channels single-ended or 8 differential)
218  - Digital input is subdevice 1 (5 channels)
219  - Digital output is subdevice 1 (8 channels)
220  - The PACER is not supported in this version
221
222 If you do not specify any options, they will default to
223
224   # comedi_config /dev/comedi0 adq12b 0x300,0,0
225
226   option 1: I/O base address. The following table is provided as a help
227    of the hardware jumpers.
228
229          address            jumper JADR
230           0x300                 1 (factory default)
231           0x320                 2
232           0x340                 3
233           0x360                 4
234           0x380                 5
235           0x3A0                 6
236
237   option 2: unipolar/bipolar ADC selection: 0 -> bipolar, 1 -> unipolar
238
239         selection         comedi_config option            JUB
240          bipolar                0                         2-3 (factory default)
241          unipolar               1                         1-2
242
243   option 3: single-ended/differential AI selection: 0 -> SE, 1 -> differential
244
245         selection         comedi_config option     JCHA    JCHB
246        single-ended             0                  1-2     1-2 (factory default) 
247        differential             1                  2-3     2-3
248
249
250    written by jeremy theler <thelerg@ib.cnea.gov.ar>
251
252    instituto balseiro
253    comision nacional de energia atomica
254    universidad nacional de cuyo
255    argentina
256
257    21-feb-2008
258      + changed supported devices string (missused the [] and ())
259
260    13-oct-2007
261      + first try
262
263
264
265
266
267 Driver: adv_pci1710
268 Description: Advantech PCI-1710, PCI-1710HG, PCI-1711, PCI-1713,
269              Advantech PCI-1720, PCI-1731
270 Author: Michal Dobes <dobes@tesnet.cz>
271 Devices: [Advantech] PCI-1710 (adv_pci1710), PCI-1710HG (pci1710hg),
272   PCI-1711 (adv_pci1710), PCI-1713, PCI-1720,
273   PCI-1731
274 Status: works
275
276 This driver supports AI, AO, DI and DO subdevices.
277 AI subdevice supports cmd and insn interface,
278 other subdevices support only insn interface.
279
280 The PCI-1710 and PCI-1710HG have the same PCI device ID, so the
281 driver cannot distinguish between them, as would be normal for a
282 PCI driver.
283
284 Configuration options:
285   [0] - PCI bus of device (optional)
286   [1] - PCI slot of device (optional)
287           If bus/slot is not specified, the first available PCI
288           device will be used.
289
290
291
292 Driver: adv_pci1723
293 Description: Advantech PCI-1723
294 Author: yonggang <rsmgnu@gmail.com>, Ian Abbott <abbotti@mev.co.uk>
295 Devices: [Advantech] PCI-1723 (adv_pci1723)
296 Updated: Mon, 14 Apr 2008 15:12:56 +0100
297 Status: works
298
299 Configuration Options:
300   [0] - PCI bus of device (optional)
301   [1] - PCI slot of device (optional)
302
303   If bus/slot is not specified, the first supported
304   PCI device found will be used.
305
306 Subdevice 0 is 8-channel AO, 16-bit, range +/- 10 V.
307
308 Subdevice 1 is 16-channel DIO.  The channels are configurable as input or
309 output in 2 groups (0 to 7, 8 to 15).  Configuring any channel implicitly
310 configures all channels in the same group.
311
312 TODO:
313
314 1. Add the two milliamp ranges to the AO subdevice (0 to 20 mA, 4 to 20 mA).
315 2. Read the initial ranges and values of the AO subdevice at start-up instead
316    of reinitializing them.
317 3. Implement calibration.
318
319
320
321 Driver: adv_pci_dio
322 Description: Advantech PCI-1730, PCI-1733, PCI-1734, PCI-1735U,
323              PCI-1736UP, PCI-1750, PCI-1751, PCI-1752, PCI-1753/E,
324              PCI-1754, PCI-1756, PCI-1762
325 Author: Michal Dobes <dobes@tesnet.cz>
326 Devices: [Advantech] PCI-1730 (adv_pci_dio), PCI-1733,
327   PCI-1734, PCI-1735U, PCI-1736UP, PCI-1739U, PCI-1750,
328   PCI-1751, PCI-1752, PCI-1753,
329   PCI-1753+PCI-1753E, PCI-1754, PCI-1756,
330   PCI-1760, PCI-1762
331 Status: untested
332 Updated: Tue, 04 May 2010 13:00:00 +0000
333
334 This driver supports now only insn interface for DI/DO/DIO.
335
336 Configuration options:
337   [0] - PCI bus of device (optional)
338   [1] - PCI slot of device (optional)
339           If bus/slot is not specified, the first available PCI
340           device will be used.
341
342
343
344
345 Driver: aio_aio12_8
346 Description: Acces I/O Products PC-104 AIO12-8 Analog I/O Board
347 Author: Pablo Mejia <pablo.mejia@cctechnol.com>
348 Devices:
349  [Acces I/O] PC-104 AIO12-8
350 Status: experimental
351
352 Configuration Options:
353   [0] - I/O port base address
354
355 Notes:
356
357   Only synchronous operations are supported.
358
359
360
361
362 Driver: aio_iiro_16
363 Description: Acces I/O Products PC-104 IIRO16 Relay And Isolated Input Board
364 Author: Zachary Ware <zach.ware@cctechnol.com>
365 Devices:
366  [Acces I/O] PC-104 AIO12-8
367 Status: experimental
368
369 Configuration Options:
370   [0] - I/O port base address
371
372
373
374
375 Driver: amplc_dio200
376 Description: Amplicon 200 Series Digital I/O
377 Author: Ian Abbott <abbotti@mev.co.uk>
378 Devices: [Amplicon] PC212E (pc212e), PC214E (pc214e), PC215E (pc215e),
379   PCI215 (pci215 or amplc_dio200), PC218E (pc218e), PC272E (pc272e),
380   PCI272 (pci272 or amplc_dio200)
381 Updated: Wed, 22 Oct 2008 13:36:02 +0100
382 Status: works
383
384 Configuration options - PC212E, PC214E, PC215E, PC218E, PC272E:
385   [0] - I/O port base address
386   [1] - IRQ (optional, but commands won't work without it)
387
388 Configuration options - PCI215, PCI272:
389   [0] - PCI bus of device (optional)
390   [1] - PCI slot of device (optional)
391   If bus/slot is not specified, the first available PCI device will
392   be used.
393
394 Passing a zero for an option is the same as leaving it unspecified.
395
396 SUBDEVICES
397
398                     PC218E         PC212E      PC215E/PCI215
399                  -------------  -------------  -------------
400   Subdevices           7              6              5
401    0                 CTR-X1         PPI-X          PPI-X
402    1                 CTR-X2         CTR-Y1         PPI-Y
403    2                 CTR-Y1         CTR-Y2         CTR-Z1
404    3                 CTR-Y2         CTR-Z1         CTR-Z2
405    4                 CTR-Z1         CTR-Z2       INTERRUPT
406    5                 CTR-Z2       INTERRUPT
407    6               INTERRUPT
408
409                     PC214E      PC272E/PCI272
410                  -------------  -------------
411   Subdevices           4              4
412    0                 PPI-X          PPI-X
413    1                 PPI-Y          PPI-Y
414    2                 CTR-Z1*        PPI-Z
415    3               INTERRUPT*     INTERRUPT
416
417 Each PPI is a 8255 chip providing 24 DIO channels.  The DIO channels
418 are configurable as inputs or outputs in four groups:
419
420   Port A  - channels  0 to  7
421   Port B  - channels  8 to 15
422   Port CL - channels 16 to 19
423   Port CH - channels 20 to 23
424
425 Only mode 0 of the 8255 chips is supported.
426
427 Each CTR is a 8254 chip providing 3 16-bit counter channels.  Each
428 channel is configured individually with INSN_CONFIG instructions.  The
429 specific type of configuration instruction is specified in data[0].
430 Some configuration instructions expect an additional parameter in
431 data[1]; others return a value in data[1].  The following configuration
432 instructions are supported:
433
434   INSN_CONFIG_SET_COUNTER_MODE.  Sets the counter channel's mode and
435     BCD/binary setting specified in data[1].
436
437   INSN_CONFIG_8254_READ_STATUS.  Reads the status register value for the
438     counter channel into data[1].
439
440   INSN_CONFIG_SET_CLOCK_SRC.  Sets the counter channel's clock source as
441     specified in data[1] (this is a hardware-specific value).  Not
442     supported on PC214E.  For the other boards, valid clock sources are
443     0 to 7 as follows:
444
445       0.  CLK n, the counter channel's dedicated CLK input from the SK1
446         connector.  (N.B. for other values, the counter channel's CLKn
447         pin on the SK1 connector is an output!)
448       1.  Internal 10 MHz clock.
449       2.  Internal 1 MHz clock.
450       3.  Internal 100 kHz clock.
451       4.  Internal 10 kHz clock.
452       5.  Internal 1 kHz clock.
453       6.  OUT n-1, the output of counter channel n-1 (see note 1 below).
454       7.  Ext Clock, the counter chip's dedicated Ext Clock input from
455         the SK1 connector.  This pin is shared by all three counter
456         channels on the chip.
457
458   INSN_CONFIG_GET_CLOCK_SRC.  Returns the counter channel's current
459     clock source in data[1].  For internal clock sources, data[2] is set
460     to the period in ns.
461
462   INSN_CONFIG_SET_GATE_SRC.  Sets the counter channel's gate source as
463     specified in data[2] (this is a hardware-specific value).  Not
464     supported on PC214E.  For the other boards, valid gate sources are 0
465     to 7 as follows:
466
467       0.  VCC (internal +5V d.c.), i.e. gate permanently enabled.
468       1.  GND (internal 0V d.c.), i.e. gate permanently disabled.
469       2.  GAT n, the counter channel's dedicated GAT input from the SK1
470         connector.  (N.B. for other values, the counter channel's GATn
471         pin on the SK1 connector is an output!)
472       3.  /OUT n-2, the inverted output of counter channel n-2 (see note
473         2 below).
474       4.  Reserved.
475       5.  Reserved.
476       6.  Reserved.
477       7.  Reserved.
478
479   INSN_CONFIG_GET_GATE_SRC.  Returns the counter channel's current gate
480     source in data[2].
481
482 Clock and gate interconnection notes:
483
484   1.  Clock source OUT n-1 is the output of the preceding channel on the
485   same counter subdevice if n > 0, or the output of channel 2 on the
486   preceding counter subdevice (see note 3) if n = 0.
487
488   2.  Gate source /OUT n-2 is the inverted output of channel 0 on the
489   same counter subdevice if n = 2, or the inverted output of channel n+1
490   on the preceding counter subdevice (see note 3) if n < 2.
491
492   3.  The counter subdevices are connected in a ring, so the highest
493   counter subdevice precedes the lowest.
494
495 The 'INTERRUPT' subdevice pretends to be a digital input subdevice.  The
496 digital inputs come from the interrupt status register.  The number of
497 channels matches the number of interrupt sources.  The PC214E does not
498 have an interrupt status register; see notes on 'INTERRUPT SOURCES'
499 below.
500
501 INTERRUPT SOURCES
502
503                     PC218E         PC212E      PC215E/PCI215
504                  -------------  -------------  -------------
505   Sources              6              6              6
506    0              CTR-X1-OUT      PPI-X-C0       PPI-X-C0
507    1              CTR-X2-OUT      PPI-X-C3       PPI-X-C3
508    2              CTR-Y1-OUT     CTR-Y1-OUT      PPI-Y-C0
509    3              CTR-Y2-OUT     CTR-Y2-OUT      PPI-Y-C3
510    4              CTR-Z1-OUT     CTR-Z1-OUT     CTR-Z1-OUT
511    5              CTR-Z2-OUT     CTR-Z2-OUT     CTR-Z2-OUT
512
513                     PC214E      PC272E/PCI272
514                  -------------  -------------
515   Sources              1              6
516    0               JUMPER-J5      PPI-X-C0
517    1                              PPI-X-C3
518    2                              PPI-Y-C0
519    3                              PPI-Y-C3
520    4                              PPI-Z-C0
521    5                              PPI-Z-C3
522
523 When an interrupt source is enabled in the interrupt source enable
524 register, a rising edge on the source signal latches the corresponding
525 bit to 1 in the interrupt status register.
526
527 When the interrupt status register value as a whole (actually, just the
528 6 least significant bits) goes from zero to non-zero, the board will
529 generate an interrupt.  For level-triggered hardware interrupts (PCI
530 card), the interrupt will remain asserted until the interrupt status
531 register is cleared to zero.  For edge-triggered hardware interrupts
532 (ISA card), no further interrupts will occur until the interrupt status
533 register is cleared to zero.  To clear a bit to zero in the interrupt
534 status register, the corresponding interrupt source must be disabled
535 in the interrupt source enable register (there is no separate interrupt
536 clear register).
537
538 The PC214E does not have an interrupt source enable register or an
539 interrupt status register; its 'INTERRUPT' subdevice has a single
540 channel and its interrupt source is selected by the position of jumper
541 J5.
542
543 COMMANDS
544
545 The driver supports a read streaming acquisition command on the
546 'INTERRUPT' subdevice.  The channel list selects the interrupt sources
547 to be enabled.  All channels will be sampled together (convert_src ==
548 TRIG_NOW).  The scan begins a short time after the hardware interrupt
549 occurs, subject to interrupt latencies (scan_begin_src == TRIG_EXT,
550 scan_begin_arg == 0).  The value read from the interrupt status register
551 is packed into a sampl_t value, one bit per requested channel, in the
552 order they appear in the channel list.
553
554
555
556 Driver: amplc_pc236
557 Description: Amplicon PC36AT, PCI236
558 Author: Ian Abbott <abbotti@mev.co.uk>
559 Devices: [Amplicon] PC36AT (pc36at), PCI236 (pci236 or amplc_pc236)
560 Updated: Wed, 01 Apr 2009 15:41:25 +0100
561 Status: works
562
563 Configuration options - PC36AT:
564   [0] - I/O port base address
565   [1] - IRQ (optional)
566
567 Configuration options - PCI236:
568   [0] - PCI bus of device (optional)
569   [1] - PCI slot of device (optional)
570   If bus/slot is not specified, the first available PCI device will be
571   used.
572
573 The PC36AT ISA board and PCI236 PCI board have a single 8255 appearing
574 as subdevice 0.
575
576 Subdevice 1 pretends to be a digital input device, but it always returns
577 0 when read. However, if you run a command with scan_begin_src=TRIG_EXT,
578 a rising edge on port C bit 3 acts as an external trigger, which can be
579 used to wake up tasks.  This is like the comedi_parport device, but the
580 only way to physically disable the interrupt on the PC36AT is to remove
581 the IRQ jumper.  If no interrupt is connected, then subdevice 1 is
582 unused.
583
584
585
586 Driver: amplc_pc263
587 Description: Amplicon PC263, PCI263
588 Author: Ian Abbott <abbotti@mev.co.uk>
589 Devices: [Amplicon] PC263 (pc263), PCI263 (pci263 or amplc_pc263)
590 Updated: Wed, 22 Oct 2008 14:10:53 +0100
591 Status: works
592
593 Configuration options - PC263:
594   [0] - I/O port base address
595
596 Configuration options - PCI263:
597   [0] - PCI bus of device (optional)
598   [1] - PCI slot of device (optional)
599   If bus/slot is not specified, the first available PCI device will be
600   used.
601
602 Each board appears as one subdevice, with 16 digital outputs, each
603 connected to a reed-relay. Relay contacts are closed when output is 1.
604 The state of the outputs can be read.
605
606
607
608 Driver: amplc_pci224
609 Description: Amplicon PCI224, PCI234
610 Author: Ian Abbott <abbotti@mev.co.uk>
611 Devices: [Amplicon] PCI224 (amplc_pci224 or pci224),
612   PCI234 (amplc_pci224 or pci234)
613 Updated: Wed, 22 Oct 2008 12:25:08 +0100
614 Status: works, but see caveats
615
616 Supports:
617
618   - ao_insn read/write
619   - ao_do_cmd mode with the following sources:
620
621     - start_src         TRIG_INT        TRIG_EXT
622     - scan_begin_src    TRIG_TIMER      TRIG_EXT
623     - convert_src       TRIG_NOW
624     - scan_end_src      TRIG_COUNT
625     - stop_src          TRIG_COUNT      TRIG_EXT        TRIG_NONE
626
627     The channel list must contain at least one channel with no repeated
628     channels.  The scan end count must equal the number of channels in
629     the channel list.
630
631     There is only one external trigger source so only one of start_src,
632     scan_begin_src or stop_src may use TRIG_EXT.
633
634 Configuration options - PCI224:
635   [0] - PCI bus of device (optional).
636   [1] - PCI slot of device (optional).
637           If bus/slot is not specified, the first available PCI device
638           will be used.
639   [2] - Select available ranges according to jumper LK1.  All channels
640         are set to the same range:
641         0=Jumper position 1-2 (factory default), 4 software-selectable
642           internal voltage references, giving 4 bipolar and 4 unipolar
643           ranges:
644             [-10V,+10V], [-5V,+5V], [-2.5V,+2.5V], [-1.25V,+1.25V],
645             [0,+10V], [0,+5V], [0,+2.5V], [0,1.25V].
646         1=Jumper position 2-3, 1 external voltage reference, giving
647           1 bipolar and 1 unipolar range:
648             [-Vext,+Vext], [0,+Vext].
649
650 Configuration options - PCI234:
651   [0] - PCI bus of device (optional).
652   [1] - PCI slot of device (optional).
653           If bus/slot is not specified, the first available PCI device
654           will be used.
655   [2] - Select internal or external voltage reference according to
656         jumper LK1.  This affects all channels:
657         0=Jumper position 1-2 (factory default), Vref=5V internal.
658         1=Jumper position 2-3, Vref=Vext external.
659   [3] - Select channel 0 range according to jumper LK2:
660         0=Jumper position 2-3 (factory default), range [-2*Vref,+2*Vref]
661           (10V bipolar when options[2]=0).
662         1=Jumper position 1-2, range [-Vref,+Vref]
663           (5V bipolar when options[2]=0).
664   [4] - Select channel 1 range according to jumper LK3: cf. options[3].
665   [5] - Select channel 2 range according to jumper LK4: cf. options[3].
666   [6] - Select channel 3 range according to jumper LK5: cf. options[3].
667
668 Passing a zero for an option is the same as leaving it unspecified.
669
670 Caveats:
671
672   1) All channels on the PCI224 share the same range.  Any change to the
673      range as a result of insn_write or a streaming command will affect
674      the output voltages of all channels, including those not specified
675      by the instruction or command.
676
677   2) For the analog output command,  the first scan may be triggered
678      falsely at the start of acquisition.  This occurs when the DAC scan
679      trigger source is switched from 'none' to 'timer' (scan_begin_src =
680      TRIG_TIMER) or 'external' (scan_begin_src == TRIG_EXT) at the start
681      of acquisition and the trigger source is at logic level 1 at the
682      time of the switch.  This is very likely for TRIG_TIMER.  For
683      TRIG_EXT, it depends on the state of the external line and whether
684      the CR_INVERT flag has been set.  The remaining scans are triggered
685      correctly.
686
687
688
689 Driver: amplc_pci230
690 Description: Amplicon PCI230, PCI260 Multifunction I/O boards
691 Author: Allan Willcox <allanwillcox@ozemail.com.au>,
692   Steve D Sharples <steve.sharples@nottingham.ac.uk>,
693   Ian Abbott <abbotti@mev.co.uk>
694 Updated: Wed, 22 Oct 2008 12:34:49 +0100
695 Devices: [Amplicon] PCI230 (pci230 or amplc_pci230),
696   PCI230+ (pci230+ or amplc_pci230),
697   PCI260 (pci260 or amplc_pci230), PCI260+ (pci260+ or amplc_pci230)
698 Status: works
699
700 Configuration options:
701   [0] - PCI bus of device (optional).
702   [1] - PCI slot of device (optional).
703           If bus/slot is not specified, the first available PCI device
704           will be used.
705
706 Configuring a "amplc_pci230" will match any supported card and it will
707 choose the best match, picking the "+" models if possible.  Configuring
708 a "pci230" will match a PCI230 or PCI230+ card and it will be treated as
709 a PCI230.  Configuring a "pci260" will match a PCI260 or PCI260+ card
710 and it will be treated as a PCI260.  Configuring a "pci230+" will match
711 a PCI230+ card.  Configuring a "pci260+" will match a PCI260+ card.
712
713 Subdevices:
714
715                 PCI230(+)    PCI260(+)
716                 ---------    ---------
717   Subdevices       3            1
718         0          AI           AI
719         1          AO
720         2          DIO
721
722 AI Subdevice:
723
724   The AI subdevice has 16 single-ended channels or 8 differential
725   channels.
726
727   The PCI230 and PCI260 cards have 12-bit resolution.  The PCI230+ and
728   PCI260+ cards have 16-bit resolution.
729
730   For differential mode, use inputs 2N and 2N+1 for channel N (e.g. use
731   inputs 14 and 15 for channel 7).  If the card is physically a PCI230
732   or PCI260 then it actually uses a "pseudo-differential" mode where the
733   inputs are sampled a few microseconds apart.  The PCI230+ and PCI260+
734   use true differential sampling.  Another difference is that if the
735   card is physically a PCI230 or PCI260, the inverting input is 2N,
736   whereas for a PCI230+ or PCI260+ the inverting input is 2N+1.  So if a
737   PCI230 is physically replaced by a PCI230+ (or a PCI260 with a
738   PCI260+) and differential mode is used, the differential inputs need
739   to be physically swapped on the connector.
740
741   The following input ranges are supported:
742
743     0 => [-10, +10] V
744     1 => [-5, +5] V
745     2 => [-2.5, +2.5] V
746     3 => [-1.25, +1.25] V
747     4 => [0, 10] V
748     5 => [0, 5] V
749     6 => [0, 2.5] V
750
751 AI Commands:
752
753   +=========+==============+===========+============+==========+
754   |start_src|scan_begin_src|convert_src|scan_end_src| stop_src |
755   +=========+==============+===========+============+==========+
756   |TRIG_NOW | TRIG_FOLLOW  |TRIG_TIMER | TRIG_COUNT |TRIG_NONE |
757   |TRIG_INT |              |TRIG_EXT(3)|            |TRIG_COUNT|
758   |         |              |TRIG_INT   |            |          |
759   |         |--------------|-----------|            |          |
760   |         | TRIG_TIMER(1)|TRIG_TIMER |            |          |
761   |         | TRIG_EXT(2)  |           |            |          |
762   |         | TRIG_INT     |           |            |          |
763   +---------+--------------+-----------+------------+----------+
764
765   Note 1: If AI command and AO command are used simultaneously, only
766           one may have scan_begin_src == TRIG_TIMER.
767
768   Note 2: For PCI230 and PCI230+, scan_begin_src == TRIG_EXT uses
769           DIO channel 16 (pin 49) which will need to be configured as
770           a digital input.  For PCI260+, the EXTTRIG/EXTCONVCLK input
771           (pin 17) is used instead.  For PCI230, scan_begin_src ==
772           TRIG_EXT is not supported.  The trigger is a rising edge
773           on the input.
774
775   Note 3: For convert_src == TRIG_EXT, the EXTTRIG/EXTCONVCLK input
776           (pin 25 on PCI230(+), pin 17 on PCI260(+)) is used.  The
777           convert_arg value is interpreted as follows:
778
779             convert_arg == (CR_EDGE | 0) => rising edge
780             convert_arg == (CR_EDGE | CR_INVERT | 0) => falling edge
781             convert_arg == 0 => falling edge (backwards compatibility)
782             convert_arg == 1 => rising edge (backwards compatibility)
783
784   All entries in the channel list must use the same analogue reference.
785   If the analogue reference is not AREF_DIFF (not differential) each
786   pair of channel numbers (0 and 1, 2 and 3, etc.) must use the same
787   input range.  The input ranges used in the sequence must be all
788   bipolar (ranges 0 to 3) or all unipolar (ranges 4 to 6).  The channel
789   sequence must consist of 1 or more identical subsequences.  Within the
790   subsequence, channels must be in ascending order with no repeated
791   channels.  For example, the following sequences are valid: 0 1 2 3
792   (single valid subsequence), 0 2 3 5 0 2 3 5 (repeated valid
793   subsequence), 1 1 1 1 (repeated valid subsequence).  The following
794   sequences are invalid: 0 3 2 1 (invalid subsequence), 0 2 3 5 0 2 3
795   (incompletely repeated subsequence).  Some versions of the PCI230+ and
796   PCI260+ have a bug that requires a subsequence longer than one entry
797   long to include channel 0.
798
799 AO Subdevice:
800
801   The AO subdevice has 2 channels with 12-bit resolution.
802
803   The following output ranges are supported:
804
805     0 => [0, 10] V
806     1 => [-10, +10] V
807
808 AO Commands:
809
810   +=========+==============+===========+============+==========+
811   |start_src|scan_begin_src|convert_src|scan_end_src| stop_src |
812   +=========+==============+===========+============+==========+
813   |TRIG_INT | TRIG_TIMER(1)| TRIG_NOW  | TRIG_COUNT |TRIG_NONE |
814   |         | TRIG_EXT(2)  |           |            |TRIG_COUNT|
815   |         | TRIG_INT     |           |            |          |
816   +---------+--------------+-----------+------------+----------+
817
818   Note 1: If AI command and AO command are used simultaneously, only
819           one may have scan_begin_src == TRIG_TIMER.
820
821   Note 2: scan_begin_src == TRIG_EXT is only supported if the card is
822           configured as a PCI230+ and is only supported on later
823           versions of the card.  As a card configured as a PCI230+ is
824           not guaranteed to support external triggering, please consider
825           this support to be a bonus.  It uses the EXTTRIG/ EXTCONVCLK
826           input (PCI230+ pin 25).  Triggering will be on the rising edge
827           unless the CR_INVERT flag is set in scan_begin_arg.
828
829   The channels in the channel sequence must be in ascending order with
830   no repeats.  All entries in the channel sequence must use the same
831   output range.
832
833 DIO Subdevice:
834
835   The DIO subdevice is a 8255 chip providing 24 DIO channels.  The DIO
836   channels are configurable as inputs or outputs in four groups:
837
838     Port A  - channels  0 to  7
839     Port B  - channels  8 to 15
840     Port CL - channels 16 to 19
841     Port CH - channels 20 to 23
842
843   Only mode 0 of the 8255 chip is supported.
844
845   Bit 0 of port C (DIO channel 16) is also used as an external scan
846   trigger input for AI commands on PCI230 and PCI230+, so would need to
847   be configured as an input to use it for that purpose.
848
849
850
851 Driver: c6xdigio
852 Description: Mechatronic Systems Inc. C6x_DIGIO DSP daughter card
853 Author: Dan Block
854 Status: unknown
855 Devices: [Mechatronic Systems Inc.] C6x_DIGIO DSP daughter card (c6xdigio)
856 Updated: Sun Nov 20 20:18:34 EST 2005
857
858 This driver will not work with a 2.4 kernel.
859 http://robot0.ge.uiuc.edu/~spong/mecha/
860
861
862
863
864 Driver: cb_das16_cs
865 Description: Computer Boards PC-CARD DAS16/16
866 Devices: [ComputerBoards] PC-CARD DAS16/16 (cb_das16_cs), PC-CARD DAS16/16-AO
867 Author: ds
868 Updated: Mon, 04 Nov 2002 20:04:21 -0800
869 Status: experimental
870
871
872
873
874
875 Driver: cb_pcidas64
876 Description: MeasurementComputing PCI-DAS64xx, 60XX, and 4020 series with the PLX 9080 PCI controller
877 Author: Frank Mori Hess <fmhess@users.sourceforge.net>
878 Status: works
879 Updated: 2002-10-09
880 Devices: [Measurement Computing] PCI-DAS6402/16 (cb_pcidas64),
881   PCI-DAS6402/12, PCI-DAS64/M1/16, PCI-DAS64/M2/16,
882   PCI-DAS64/M3/16, PCI-DAS6402/16/JR, PCI-DAS64/M1/16/JR,
883   PCI-DAS64/M2/16/JR, PCI-DAS64/M3/16/JR, PCI-DAS64/M1/14,
884   PCI-DAS64/M2/14, PCI-DAS64/M3/14, PCI-DAS6013, PCI-DAS6014,
885   PCI-DAS6023, PCI-DAS6025, PCI-DAS6030,
886   PCI-DAS6031, PCI-DAS6032, PCI-DAS6033, PCI-DAS6034,
887   PCI-DAS6035, PCI-DAS6036, PCI-DAS6040, PCI-DAS6052,
888   PCI-DAS6070, PCI-DAS6071, PCI-DAS4020/12
889
890 Configuration options:
891    [0] - PCI bus of device (optional)
892    [1] - PCI slot of device (optional)
893
894 These boards may be autocalibrated with the comedi_calibrate utility.
895
896 To select the bnc trigger input on the 4020 (instead of the dio input),
897 specify a nonzero channel in the chanspec.  If you wish to use an external
898 master clock on the 4020, you may do so by setting the scan_begin_src
899 to TRIG_OTHER, and using an INSN_CONFIG_TIMER_1 configuration insn
900 to configure the divisor to use for the external clock.
901
902 Some devices are not identified because the PCI device IDs are not yet
903 known. If you have such a board, please file a bug report at
904 https://bugs.comedi.org.
905
906
907
908
909 Driver: cb_pcidas
910 Description: MeasurementComputing PCI-DAS series with the AMCC S5933 PCI controller
911 Author: Ivan Martinez <imr@oersted.dtu.dk>,
912   Frank Mori Hess <fmhess@users.sourceforge.net>,
913   Brice Dubost <braice@braice.net>
914 Updated: 2010-11-19
915 Devices: [Measurement Computing] PCI-DAS1602/16 (cb_pcidas),
916   PCI-DAS1602/16jr, PCI-DAS1602/12, PCI-DAS1200, PCI-DAS1200jr,
917   PCI-DAS1000, PCI-DAS1001, PCI_DAS1002
918
919 Status:
920   There are many reports of the driver being used with most of the
921   supported cards. Despite no detailed log is maintained, it can
922   be said that the driver is quite tested and stable.
923
924   The boards may be autocalibrated using the comedi_calibrate
925   utility.
926
927 Configuration options:
928   [0] - PCI bus of device (optional)
929   [1] - PCI slot of device (optional)
930   If bus/slot is not specified, the first supported
931   PCI device found will be used.
932
933 For commands, the scanned channels must be consecutive
934 (i.e. 4-5-6-7, 2-3-4,...), and must all have the same
935 range and aref.
936
937 AI Triggering:
938    For start_src == TRIG_EXT, the A/D EXTERNAL TRIGGER IN (pin 45) is used.
939    For 1602 series, the start_arg is interpreted as follows:
940      start_arg == 0                   => gated triger (level high)
941      start_arg == CR_INVERT           => gated triger (level low)
942      start_arg == CR_EDGE             => Rising edge
943      start_arg == CR_EDGE | CR_INVERT => Falling edge
944    For the other boards the trigger will be done on rising edge
945
946
947
948 Driver: cb_pcidda
949 Description: MeasurementComputing PCI-DDA series
950 Author: Ivan Martinez <ivanmr@altavista.com>, Frank Mori Hess <fmhess@users.sourceforge.net>
951 Status: Supports 08/16, 04/16, 02/16, 08/12, 04/12, and 02/12
952 Devices: [Measurement Computing] PCI-DDA08/12 (cb_pcidda), PCI-DDA04/12,
953   PCI-DDA02/12, PCI-DDA08/16, PCI-DDA04/16, PCI-DDA02/16
954
955 Configuration options:
956   [0] - PCI bus of device (optional)
957   [1] - PCI slot of device (optional)
958   If bus/slot is not specified, the first available PCI
959   device will be used.
960
961 Only simple analog output writing is supported.
962
963 So far it has only been tested with:
964   - PCI-DDA08/12
965 Please report success/failure with other different cards to
966 <comedi@comedi.org>.
967
968
969
970 Driver: cb_pcidio
971 Description: ComputerBoards' DIO boards with PCI interface
972 Devices: [Measurement Computing] PCI-DIO24 (cb_pcidio), PCI-DIO24H, PCI-DIO48H
973 Author: Yoshiya Matsuzaka
974 Updated: Mon, 29 Oct 2007 15:40:47 +0000
975 Status: experimental
976
977 This driver has been modified from skel.c of comedi-0.7.70.
978
979 Configuration Options:
980   [0] - PCI bus of device (optional)
981   [1] - PCI slot of device (optional)
982   If bus/slot is not specified, the first available PCI device will
983   be used.
984
985 Passing a zero for an option is the same as leaving it unspecified.
986
987
988
989 Driver: cb_pcimdas
990 Description: Measurement Computing PCI Migration series boards
991 Devices: [ComputerBoards] PCIM-DAS1602/16 (cb_pcimdas)
992 Author: Richard Bytheway
993 Updated: Wed, 13 Nov 2002 12:34:56 +0000
994 Status: experimental
995
996 Written to support the PCIM-DAS1602/16 on a 2.4 series kernel.
997
998 Configuration Options:
999     [0] - PCI bus number
1000     [1] - PCI slot number
1001
1002 Developed from cb_pcidas and skel by Richard Bytheway (mocelet@sucs.org).
1003 Only supports DIO, AO and simple AI in it's present form.
1004 No interrupts, multi channel or FIFO AI, although the card looks like it could support this.
1005 See http://www.measurementcomputing.com/PDFManuals/pcim-das1602_16.pdf for more details.
1006
1007
1008
1009 Driver: cb_pcimdda
1010 Description: Measurement Computing PCIM-DDA06-16
1011 Devices: [Measurement Computing] PCIM-DDA06-16 (cb_pcimdda)
1012 Author: Calin Culianu <calin@ajvar.org>
1013 Updated: Mon, 14 Apr 2008 15:15:51 +0100
1014 Status: works
1015
1016 All features of the PCIM-DDA06-16 board are supported.  This board
1017 has 6 16-bit AO channels, and the usual 8255 DIO setup.  (24 channels,
1018 configurable in banks of 8 and 4, etc.).  This board does not support commands.
1019
1020 The board has a peculiar way of specifying AO gain/range settings -- You have
1021 1 jumper bank on the card, which either makes all 6 AO channels either
1022 5 Volt unipolar, 5V bipolar, 10 Volt unipolar or 10V bipolar.
1023
1024 Since there is absolutely _no_ way to tell in software how this jumper is set
1025 (well, at least according  to the rather thin spec. from Measurement Computing
1026  that comes with the board), the driver assumes the jumper is at its factory
1027 default setting of +/-5V.
1028
1029 Also of note is the fact that this board features another jumper, whose
1030 state is also completely invisible to software.  It toggles two possible AO
1031 output modes on the board:
1032
1033   - Update Mode: Writing to an AO channel instantaneously updates the actual
1034     signal output by the DAC on the board (this is the factory default).
1035   - Simultaneous XFER Mode: Writing to an AO channel has no effect until
1036     you read from any one of the AO channels.  This is useful for loading
1037     all 6 AO values, and then reading from any one of the AO channels on the
1038     device to instantly update all 6 AO values in unison.  Useful for some
1039     control apps, I would assume?  If your jumper is in this setting, then you
1040     need to issue your comedi_data_write()s to load all the values you want,
1041     then issue one comedi_data_read() on any channel on the AO subdevice
1042     to initiate the simultaneous XFER.
1043
1044 Configuration Options:
1045   [0] PCI bus (optional)
1046   [1] PCI slot (optional)
1047   [2] analog output range jumper setting
1048       0 == +/- 5 V
1049       1 == +/- 10 V
1050
1051
1052
1053 Driver: comedi_bond
1054 Description: A driver to 'bond' (merge) multiple subdevices from multiple devices together as one.
1055 Devices:
1056 Author: ds
1057 Updated: Mon, 10 Oct 00:18:25 -0500
1058 Status: works
1059
1060 This driver allows you to 'bond' (merge) multiple comedi subdevices
1061 (coming from possibly difference boards and/or drivers) together.  For
1062 example, if you had a board with 2 different DIO subdevices, and
1063 another with 1 DIO subdevice, you could 'bond' them with this driver
1064 so that they look like one big fat DIO subdevice.  This makes writing
1065 applications slightly easier as you don't have to worry about managing
1066 different subdevices in the application -- you just worry about
1067 indexing one linear array of channel id's.
1068
1069 Right now only DIO subdevices are supported as that's the personal itch
1070 I am scratching with this driver.  If you want to add support for AI and AO
1071 subdevs, go right on ahead and do so!
1072
1073 Commands aren't supported -- although it would be cool if they were.
1074
1075 Configuration Options:
1076   List of comedi-minors to bond.  All subdevices of the same type
1077   within each minor will be concatenated together in the order given here.
1078
1079
1080
1081 Driver: comedi_parport
1082 Description: Standard PC parallel port
1083 Author: ds
1084 Status: works in immediate mode
1085 Devices: [standard] parallel port (comedi_parport)
1086 Updated: Tue, 30 Apr 2002 21:11:45 -0700
1087
1088 A cheap and easy way to get a few more digital I/O lines.  Steal
1089 additional parallel ports from old computers or your neighbors'
1090 computers.
1091
1092 Option list:
1093  0: I/O port base for the parallel port.
1094  1: IRQ
1095
1096 Parallel Port Lines:
1097
1098 pin     subdev  chan    aka
1099 ---     ------  ----    ---
1100 1       2       0       strobe
1101 2       0       0       data 0
1102 3       0       1       data 1
1103 4       0       2       data 2
1104 5       0       3       data 3
1105 6       0       4       data 4
1106 7       0       5       data 5
1107 8       0       6       data 6
1108 9       0       7       data 7
1109 10      1       3       acknowledge
1110 11      1       4       busy
1111 12      1       2       output
1112 13      1       1       printer selected
1113 14      2       1       auto LF
1114 15      1       0       error
1115 16      2       2       init
1116 17      2       3       select printer
1117 18-25   ground
1118
1119 Notes:
1120
1121 Subdevices 0 is digital I/O, subdevice 1 is digital input, and
1122 subdevice 2 is digital output.  Unlike other Comedi devices,
1123 subdevice 0 defaults to output.
1124
1125 Pins 13 and 14 are inverted once by Comedi and once by the
1126 hardware, thus cancelling the effect.
1127
1128 Pin 1 is a strobe, thus acts like one.  There's no way in software
1129 to change this, at least on a standard parallel port.
1130
1131 Subdevice 3 pretends to be a digital input subdevice, but it always
1132 returns 0 when read.  However, if you run a command with
1133 scan_begin_src=TRIG_EXT, it uses pin 10 as a external triggering
1134 pin, which can be used to wake up tasks.
1135
1136
1137
1138 Driver: comedi_rt_timer
1139 Description: Command emulator using real-time tasks
1140 Author: ds, fmhess
1141 Devices:
1142 Status: works
1143
1144 This driver requires RTAI or RTLinux to work correctly.  It doesn't
1145 actually drive hardware directly, but calls other drivers and uses
1146 a real-time task to emulate commands for drivers and devices that
1147 are incapable of native commands.  Thus, you can get accurately
1148 timed I/O on any device.
1149
1150 Since the timing is all done in software, sampling jitter is much
1151 higher than with a device that has an on-board timer, and maximum
1152 sample rate is much lower.
1153
1154 Configuration options:
1155   [0] - minor number of device you wish to emulate commands for
1156   [1] - subdevice number you wish to emulate commands for
1157
1158
1159
1160 Driver: comedi_test
1161 Description: generates fake waveforms
1162 Author: Joachim Wuttke <Joachim.Wuttke@icn.siemens.de>, Frank Mori Hess
1163   <fmhess@users.sourceforge.net>, ds
1164 Devices:
1165 Status: works
1166 Updated: Sat, 16 Mar 2002 17:34:48 -0800
1167
1168 This driver is mainly for testing purposes, but can also be used to
1169 generate sample waveforms on systems that don't have data acquisition
1170 hardware.
1171
1172 Configuration options:
1173   [0] - Amplitude in microvolts for fake waveforms (default 1 volt)
1174   [1] - Period in microseconds for fake waveforms (default 0.1 sec)
1175
1176 Generates a sawtooth wave on channel 0, square wave on channel 1, additional
1177 waveforms could be added to other channels (currently they return flatline
1178 zero volts).
1179
1180
1181
1182
1183 Driver: contec_pci_dio
1184 Description: Contec PIO1616L digital I/O board
1185 Devices: [Contec] PIO1616L (contec_pci_dio)
1186 Author: Stefano Rivoir <s.rivoir@gts.it>
1187 Updated: Wed, 27 Jun 2007 13:00:06 +0100
1188 Status: works
1189
1190 Configuration Options:
1191   [0] - PCI bus of device (optional)
1192   [1] - PCI slot of device (optional)
1193   If bus/slot is not specified, the first supported
1194   PCI device found will be used.
1195
1196
1197
1198 Driver: daqboard2000
1199 Description: IOTech DAQBoard/2000
1200 Author: Anders Blomdell <anders.blomdell@control.lth.se>
1201 Status: works
1202 Updated: Mon, 14 Apr 2008 15:28:52 +0100
1203 Devices: [IOTech] DAQBoard/2000 (daqboard2000)
1204
1205 Much of the functionality of this driver was determined from reading
1206 the source code for the Windows driver.
1207
1208 The FPGA on the board requires initialization code, which can
1209 be loaded by comedi_config using the -i
1210 option.  The initialization code is available from http://www.comedi.org
1211 in the comedi_nonfree_firmware tarball.
1212
1213 Configuration options:
1214   [0] - PCI bus of device (optional)
1215   [1] - PCI slot of device (optional)
1216   If bus/slot is not specified, the first supported
1217   PCI device found will be used.
1218
1219
1220
1221 Driver: das08
1222 Description: DAS-08 compatible boards
1223 Author: Warren Jasper, ds, Frank Hess
1224 Devices: [Keithley Metrabyte] DAS08 (isa-das08), [ComputerBoards] DAS08 (isa-das08),
1225   DAS08-PGM (das08-pgm),
1226   DAS08-PGH (das08-pgh), DAS08-PGL (das08-pgl), DAS08-AOH (das08-aoh),
1227   DAS08-AOL (das08-aol), DAS08-AOM (das08-aom), DAS08/JR-AO (das08/jr-ao),
1228   DAS08/JR-16-AO (das08jr-16-ao), PCI-DAS08 (das08),
1229   PC104-DAS08 (pc104-das08), DAS08/JR/16 (das08jr/16)
1230 Status: works
1231
1232 This is a rewrite of the das08 and das08jr drivers.
1233
1234 Options (for ISA cards):
1235         [0] - base io address
1236
1237 Options (for pci-das08):
1238         [0] - bus  (optional)
1239         [1] = slot (optional)
1240
1241 The das08 driver doesn't support asynchronous commands, since
1242 the cheap das08 hardware doesn't really support them.  The
1243 comedi_rt_timer driver can be used to emulate commands for this
1244 driver.
1245
1246
1247
1248 Driver: das08_cs
1249 Description: DAS-08 PCMCIA boards
1250 Author: Warren Jasper, ds, Frank Hess
1251 Devices: [ComputerBoards] PCM-DAS08 (pcm-das08)
1252 Status: works
1253
1254 This is the PCMCIA-specific support split off from the
1255 das08 driver.
1256
1257 Options (for pcm-das08):
1258         NONE
1259
1260 Command support does not exist, but could be added for this board.
1261
1262
1263
1264 Driver: das16
1265 Description: DAS16 compatible boards
1266 Author: Sam Moore, Warren Jasper, ds, Chris Baugher, Frank Hess, Roman Fietze
1267 Devices: [Keithley Metrabyte] DAS-16 (das-16), DAS-16G (das-16g),
1268   DAS-16F (das-16f), DAS-1201 (das-1201), DAS-1202 (das-1202),
1269   DAS-1401 (das-1401), DAS-1402 (das-1402), DAS-1601 (das-1601),
1270   DAS-1602 (das-1602),
1271   [ComputerBoards] PC104-DAS16/JR (pc104-das16jr),
1272   PC104-DAS16JR/16 (pc104-das16jr/16),
1273   CIO-DAS16JR/16 (cio-das16jr/16),
1274   CIO-DAS16/JR (cio-das16/jr), CIO-DAS1401/12 (cio-das1401/12),
1275   CIO-DAS1402/12 (cio-das1402/12), CIO-DAS1402/16 (cio-das1402/16),
1276   CIO-DAS1601/12 (cio-das1601/12), CIO-DAS1602/12 (cio-das1602/12),
1277   CIO-DAS1602/16 (cio-das1602/16), CIO-DAS16/330 (cio-das16/330)
1278 Status: works
1279 Updated: 2003-10-12
1280
1281 A rewrite of the das16 and das1600 drivers.
1282 Options:
1283         [0] - base io address
1284         [1] - irq (does nothing, irq is not used anymore)
1285         [2] - dma (optional, required for comedi_command support)
1286         [3] - master clock speed in MHz (optional, 1 or 10, ignored if
1287                 board can probe clock, defaults to 1)
1288         [4] - analog input range lowest voltage in microvolts (optional,
1289                 only useful if your board does not have software
1290                 programmable gain)
1291         [5] - analog input range highest voltage in microvolts (optional,
1292                 only useful if board does not have software programmable
1293                 gain)
1294         [6] - analog output range lowest voltage in microvolts (optional)
1295         [7] - analog output range highest voltage in microvolts (optional)
1296         [8] - use timer mode for DMA.  Timer mode is needed e.g. for
1297                 buggy DMA controllers in NS CS5530A (Geode Companion), and for
1298                 'jr' cards that lack a hardware fifo.  This option is no
1299                 longer needed, since timer mode is _always_ used.
1300
1301 Passing a zero for an option is the same as leaving it unspecified.
1302
1303
1304
1305
1306 Driver: das16m1
1307 Description: CIO-DAS16/M1
1308 Author: Frank Mori Hess <fmhess@users.sourceforge.net>
1309 Devices: [Measurement Computing] CIO-DAS16/M1 (cio-das16/m1)
1310 Status: works
1311
1312 This driver supports a single board - the CIO-DAS16/M1.
1313 As far as I know, there are no other boards that have
1314 the same register layout.  Even the CIO-DAS16/M1/16 is
1315 significantly different.
1316
1317 I was _barely_ able to reach the full 1 MHz capability
1318 of this board, using a hard real-time interrupt
1319 (set the TRIG_RT flag in your comedi_cmd and use
1320 rtlinux or RTAI).  The board can't do dma, so the bottleneck is
1321 pulling the data across the ISA bus.  I timed the interrupt
1322 handler, and it took my computer ~470 microseconds to pull 512
1323 samples from the board.  So at 1 Mhz sampling rate,
1324 expect your CPU to be spending almost all of its
1325 time in the interrupt handler.
1326
1327 This board has some unusual restrictions for its channel/gain list.  If the
1328 list has 2 or more channels in it, then two conditions must be satisfied:
1329 (1) - even/odd channels must appear at even/odd indices in the list
1330 (2) - the list must have an even number of entries.
1331
1332 Options:
1333         [0] - base io address
1334         [1] - irq (optional, but you probably want it)
1335
1336 irq can be omitted, although the cmd interface will not work without it.
1337
1338
1339
1340 Driver: das1800
1341 Description: Keithley Metrabyte DAS1800 (& compatibles)
1342 Author: Frank Mori Hess <fmhess@users.sourceforge.net>
1343 Devices: [Keithley Metrabyte] DAS-1701ST (das-1701st),
1344   DAS-1701ST-DA (das-1701st-da), DAS-1701/AO (das-1701ao),
1345   DAS-1702ST (das-1702st), DAS-1702ST-DA (das-1702st-da),
1346   DAS-1702HR (das-1702hr), DAS-1702HR-DA (das-1702hr-da),
1347   DAS-1702/AO (das-1702ao), DAS-1801ST (das-1801st),
1348   DAS-1801ST-DA (das-1801st-da), DAS-1801HC (das-1801hc),
1349   DAS-1801AO (das-1801ao), DAS-1802ST (das-1802st),
1350   DAS-1802ST-DA (das-1802st-da), DAS-1802HR (das-1802hr),
1351   DAS-1802HR-DA (das-1802hr-da), DAS-1802HC (das-1802hc),
1352   DAS-1802AO (das-1802ao)
1353 Status: works
1354
1355 The waveform analog output on the 'ao' cards is not supported.
1356 If you need it, send me (Frank Hess) an email.
1357
1358 Configuration options:
1359   [0] - I/O port base address
1360   [1] - IRQ (optional, required for timed or externally triggered conversions)
1361   [2] - DMA0 (optional, requires irq)
1362   [3] - DMA1 (optional, requires irq and dma0)
1363
1364
1365
1366 Driver: das6402
1367 Description: Keithley Metrabyte DAS6402 (& compatibles)
1368 Author: Oystein Svendsen <svendsen@pvv.org>
1369 Status: bitrotten
1370 Devices: [Keithley Metrabyte] DAS6402 (das6402)
1371
1372 This driver has suffered bitrot.
1373
1374
1375
1376 Driver: das800
1377 Description: Keithley Metrabyte DAS800 (& compatibles)
1378 Author: Frank Mori Hess <fmhess@users.sourceforge.net>
1379 Devices: [Keithley Metrabyte] DAS-800 (das-800), DAS-801 (das-801),
1380   DAS-802 (das-802),
1381   [Measurement Computing] CIO-DAS800 (cio-das800),
1382   CIO-DAS801 (cio-das801), CIO-DAS802 (cio-das802),
1383   CIO-DAS802/16 (cio-das802/16)
1384 Status: works, cio-das802/16 untested - email me if you have tested it
1385
1386 Configuration options:
1387   [0] - I/O port base address
1388   [1] - IRQ (optional, required for timed or externally triggered conversions)
1389
1390 Notes:
1391         IRQ can be omitted, although the cmd interface will not work without it.
1392
1393         All entries in the channel/gain list must use the same gain and be
1394         consecutive channels counting upwards in channel number (these are
1395         hardware limitations.)
1396
1397         I've never tested the gain setting stuff since I only have a
1398         DAS-800 board with fixed gain.
1399
1400         The cio-das802/16 does not have a fifo-empty status bit!  Therefore
1401         only fifo-half-full transfers are possible with this card.
1402
1403
1404
1405 Driver: dmm32at
1406 Description: Diamond Systems mm32at driver.
1407 Devices:
1408 Author: Perry J. Piplani <perry.j.piplani@nasa.gov>
1409 Updated: Fri Jun  4 09:13:24 CDT 2004
1410 Status: experimental
1411
1412 This driver is for the Diamond Systems MM-32-AT board
1413 http://www.diamondsystems.com/products/diamondmm32at It is being used
1414 on serveral projects inside NASA, without problems so far. For analog
1415 input commands, TRIG_EXT is not yet supported at all..
1416
1417 Configuration Options:
1418   comedi_config /dev/comedi0 dmm32at baseaddr,irq
1419
1420
1421
1422 Driver: dt2801
1423 Description: Data Translation DT2801 series and DT01-EZ
1424 Author: ds
1425 Status: works
1426 Devices: [Data Translation] DT2801 (dt2801), DT2801-A, DT2801/5716A,
1427   DT2805, DT2805/5716A, DT2808, DT2818, DT2809, DT01-EZ
1428
1429 This driver can autoprobe the type of board.
1430
1431 Configuration options:
1432   [0] - I/O port base address
1433   [1] - unused
1434   [2] - A/D reference 0=differential, 1=single-ended
1435   [3] - A/D range
1436           0 = [-10,10]
1437           1 = [0,10]
1438   [4] - D/A 0 range
1439           0 = [-10,10]
1440           1 = [-5,5]
1441           2 = [-2.5,2.5]
1442           3 = [0,10]
1443           4 = [0,5]
1444   [5] - D/A 1 range (same choices)
1445
1446
1447
1448 Driver: dt2811
1449 Description: Data Translation DT2811
1450 Author: ds
1451 Devices: [Data Translation] DT2811-PGL (dt2811-pgl), DT2811-PGH (dt2811-pgh)
1452 Status: works
1453
1454 Configuration options:
1455   [0] - I/O port base address
1456   [1] - IRQ, although this is currently unused
1457   [2] - A/D reference
1458           0 = signle-ended
1459           1 = differential
1460           2 = pseudo-differential (common reference)
1461   [3] - A/D range
1462           0 = [-5,5]
1463           1 = [-2.5,2.5]
1464           2 = [0,5]
1465   [4] - D/A 0 range (same choices)
1466   [4] - D/A 1 range (same choices)
1467
1468
1469
1470 Driver: dt2814
1471 Description: Data Translation DT2814
1472 Author: ds
1473 Status: complete
1474 Devices: [Data Translation] DT2814 (dt2814)
1475
1476 Configuration options:
1477   [0] - I/O port base address
1478   [1] - IRQ
1479
1480 This card has 16 analog inputs multiplexed onto a 12 bit ADC.  There
1481 is a minimally useful onboard clock.  The base frequency for the
1482 clock is selected by jumpers, and the clock divider can be selected
1483 via programmed I/O.  Unfortunately, the clock divider can only be
1484 a power of 10, from 1 to 10^7, of which only 3 or 4 are useful.  In
1485 addition, the clock does not seem to be very accurate.
1486
1487
1488
1489 Driver: dt2815
1490 Description: Data Translation DT2815
1491 Author: ds
1492 Status: mostly complete, untested
1493 Devices: [Data Translation] DT2815 (dt2815)
1494
1495 I'm not sure anyone has ever tested this board.  If you have information
1496 contrary, please update.
1497
1498 Configuration options:
1499   [0] - I/O port base base address
1500   [1] - IRQ (unused)
1501   [2] - Voltage unipolar/bipolar configuration
1502           0 == unipolar 5V  (0V -- +5V)
1503           1 == bipolar 5V  (-5V -- +5V)
1504   [3] - Current offset configuration
1505           0 == disabled  (0mA -- +32mAV)
1506           1 == enabled  (+4mA -- +20mAV)
1507   [4] - Firmware program configuration
1508           0 == program 1 (see manual table 5-4)
1509           1 == program 2 (see manual table 5-4)
1510           2 == program 3 (see manual table 5-4)
1511           3 == program 4 (see manual table 5-4)
1512   [5] - Analog output 0 range configuration
1513           0 == voltage
1514           1 == current
1515   [6] - Analog output 1 range configuration (same options)
1516   [7] - Analog output 2 range configuration (same options)
1517   [8] - Analog output 3 range configuration (same options)
1518   [9] - Analog output 4 range configuration (same options)
1519   [10] - Analog output 5 range configuration (same options)
1520   [11] - Analog output 6 range configuration (same options)
1521   [12] - Analog output 7 range configuration (same options)
1522
1523
1524
1525 Driver: dt2817
1526 Description: Data Translation DT2817
1527 Author: ds
1528 Status: complete
1529 Devices: [Data Translation] DT2817 (dt2817)
1530
1531 A very simple digital I/O card.  Four banks of 8 lines, each bank
1532 is configurable for input or output.  One wonders why it takes a
1533 50 page manual to describe this thing.
1534
1535 The driver (which, btw, is much less than 50 pages) has 1 subdevice
1536 with 32 channels, configurable in groups of 8.
1537
1538 Configuration options:
1539   [0] - I/O port base base address
1540
1541
1542
1543 Driver: dt282x
1544 Description: Data Translation DT2821 series (including DT-EZ)
1545 Author: ds
1546 Devices: [Data Translation] DT2821 (dt2821),
1547   DT2821-F-16SE (dt2821-f), DT2821-F-8DI (dt2821-f),
1548   DT2821-G-16SE (dt2821-f), DT2821-G-8DI (dt2821-g),
1549   DT2823 (dt2823),
1550   DT2824-PGH (dt2824-pgh), DT2824-PGL (dt2824-pgl), DT2825 (dt2825),
1551   DT2827 (dt2827), DT2828 (dt2828), DT21-EZ (dt21-ez), DT23-EZ (dt23-ez),
1552   DT24-EZ (dt24-ez), DT24-EZ-PGL (dt24-ez-pgl)
1553 Status: complete
1554 Updated: Wed, 22 Aug 2001 17:11:34 -0700
1555
1556 Configuration options:
1557   [0] - I/O port base address
1558   [1] - IRQ
1559   [2] - DMA 1
1560   [3] - DMA 2
1561   [4] - AI jumpered for 0=single ended, 1=differential
1562   [5] - AI jumpered for 0=straight binary, 1=2's complement
1563   [6] - AO 0 jumpered for 0=straight binary, 1=2's complement
1564   [7] - AO 1 jumpered for 0=straight binary, 1=2's complement
1565   [8] - AI jumpered for 0=[-10,10]V, 1=[0,10], 2=[-5,5], 3=[0,5]
1566   [9] - AO 0 jumpered for 0=[-10,10]V, 1=[0,10], 2=[-5,5], 3=[0,5],
1567         4=[-2.5,2.5]
1568   [10]- A0 1 jumpered for 0=[-10,10]V, 1=[0,10], 2=[-5,5], 3=[0,5],
1569         4=[-2.5,2.5]
1570
1571 Notes:
1572   - AO commands might be broken.
1573   - If you try to run a command on both the AI and AO subdevices
1574     simultaneously, bad things will happen.  The driver needs to
1575     be fixed to check for this situation and return an error.
1576
1577
1578
1579 Driver: dt3000
1580 Description: Data Translation DT3000 series
1581 Author: ds
1582 Devices: [Data Translation] DT3001 (dt3000), DT3001-PGL, DT3002, DT3003,
1583   DT3003-PGL, DT3004, DT3005, DT3004-200
1584 Updated: Mon, 14 Apr 2008 15:41:24 +0100
1585 Status: works
1586
1587 Configuration Options:
1588   [0] - PCI bus of device (optional)
1589   [1] - PCI slot of device (optional)
1590   If bus/slot is not specified, the first supported
1591   PCI device found will be used.
1592
1593 There is code to support AI commands, but it may not work.
1594
1595 AO commands are not supported.
1596
1597
1598
1599 Driver: dt9812
1600 Description: Data Translation DT9812 USB module
1601 Author: anders.blomdell@control.lth.se (Anders Blomdell)
1602 Status: in development
1603 Devices: [Data Translation] DT9812 (dt9812)
1604 Updated: Sun Nov 20 20:18:34 EST 2005
1605
1606 This driver works, but bulk transfers not implemented. Might be a starting point
1607 for someone else. I found out too late that USB has too high latencies (>1 ms)
1608 for my needs.
1609
1610
1611
1612 Driver: fl512
1613 Description: unknown
1614 Author: Anders Gnistrup <ex18@kalman.iau.dtu.dk>
1615 Devices: [unknown] FL512 (fl512)
1616 Status: unknown
1617
1618 Digital I/O is not supported.
1619
1620 Configuration options:
1621   [0] - I/O port base address
1622
1623
1624
1625 Driver: gsc_hpdi
1626 Description: General Standards Corporation High
1627     Speed Parallel Digital Interface rs485 boards
1628 Author: Frank Mori Hess <fmhess@users.sourceforge.net>
1629 Status: only receive mode works, transmit not supported
1630 Updated: 2003-02-20
1631 Devices: [General Standards Corporation] PCI-HPDI32 (gsc_hpdi),
1632   PMC-HPDI32
1633
1634 Configuration options:
1635    [0] - PCI bus of device (optional)
1636    [1] - PCI slot of device (optional)
1637
1638 There are some additional hpdi models available from GSC for which
1639 support could be added to this driver.
1640
1641
1642
1643
1644 Driver: icp_multi
1645 Description: Inova ICP_MULTI
1646 Author: Anne Smorthit <anne.smorthit@sfwte.ch>
1647 Devices: [Inova] ICP_MULTI (icp_multi)
1648 Status: works
1649
1650 The driver works for analog input and output and digital input and output.
1651 It does not work with interrupts or with the counters.  Currently no support
1652 for DMA.
1653
1654 It has 16 single-ended or 8 differential Analogue Input channels with 12-bit
1655 resolution.  Ranges : 5V, 10V, +/-5V, +/-10V, 0..20mA and 4..20mA.  Input
1656 ranges can be individually programmed for each channel.  Voltage or current
1657 measurement is selected by jumper.
1658
1659 There are 4 x 12-bit Analogue Outputs.  Ranges : 5V, 10V, +/-5V, +/-10V
1660
1661 16 x Digital Inputs, 24V
1662
1663 8 x Digital Outputs, 24V, 1A
1664
1665 4 x 16-bit counters
1666
1667 Options:
1668  [0] - PCI bus number - if bus number and slot number are 0,
1669                         then driver search for first unused card
1670  [1] - PCI slot number
1671
1672
1673
1674 Driver: ii_pci20kc
1675 Description: Intelligent Instruments PCI-20001C carrier board
1676 Author: Markus Kempf <kempf@matsci.uni-sb.de>
1677 Devices: [Intelligent Instrumentation] PCI-20001C (ii_pci20kc)
1678 Status: works
1679
1680 Supports the PCI-20001 C-2a Carrier board, and could probably support
1681 the other carrier boards with small modifications.  Modules supported
1682 are:
1683         PCI-20006 M-2 16-bit analog output module
1684         PCI-20341 M-1A 16-bit analog input module
1685
1686 Options:
1687   0   Board base address
1688   1   IRQ
1689   2   first option for module 1
1690   3   second option for module 1
1691   4   first option for module 2
1692   5   second option for module 2
1693   6   first option for module 3
1694   7   second option for module 3
1695
1696 options for PCI-20006M:
1697   first:   Analog output channel 0 range configuration
1698              0  bipolar 10  (-10V -- +10V)
1699              1  unipolar 10  (0V -- +10V)
1700              2  bipolar 5  (-5V -- 5V)
1701   second:  Analog output channel 1 range configuration
1702
1703 options for PCI-20341M:
1704   first:   Analog input gain configuration
1705              0  1
1706              1  10
1707              2  100
1708              3  200
1709
1710
1711
1712 Driver: jr3_pci
1713 Description: JR3/PCI force sensor board
1714 Author: Anders Blomdell <anders.blomdell@control.lth.se>
1715 Status: works
1716 Devices: [JR3] PCI force sensor board (jr3_pci)
1717
1718   The DSP on the board requires initialization code, which can
1719   be loaded by placing it in /lib/firmware/comedi.
1720   The initialization code should be somewhere on the media you got
1721   with your card. One version is available from http://www.comedi.org
1722   in the comedi_nonfree_firmware tarball.
1723
1724   Configuration options:
1725   [0] - PCI bus number - if bus number and slot number are 0,
1726                          then driver search for first unused card
1727   [1] - PCI slot number
1728
1729
1730
1731
1732 Driver: ke_counter
1733 Description: Driver for Kolter Electronic Counter Card
1734 Devices: [Kolter Electronic] PCI Counter Card (ke_counter)
1735 Author: Michael Hillmann
1736 Updated: Mon, 14 Apr 2008 15:42:42 +0100
1737 Status: tested
1738
1739 Configuration Options:
1740   [0] - PCI bus of device (optional)
1741   [1] - PCI slot of device (optional)
1742   If bus/slot is not specified, the first supported
1743   PCI device found will be used.
1744
1745 This driver is a simple driver to read the counter values from
1746 Kolter Electronic PCI Counter Card.
1747
1748
1749
1750 Driver: me4000
1751 Description: Meilhaus ME-4000 series boards
1752 Devices: [Meilhaus] ME-4650 (me4000), ME-4670i, ME-4680, ME-4680i, ME-4680is
1753 Author: gg (Guenter Gebhardt <g.gebhardt@meilhaus.com>)
1754 Updated: Mon, 18 Mar 2002 15:34:01 -0800
1755 Status: broken (no support for loading firmware)
1756
1757 Supports:
1758
1759     - Analog Input
1760     - Analog Output
1761     - Digital I/O
1762     - Counter
1763
1764 Configuration Options:
1765
1766     [0] - PCI bus number (optional)
1767     [1] - PCI slot number (optional)
1768
1769     If bus/slot is not specified, the first available PCI
1770     device will be used.
1771
1772 The firmware required by these boards is available in the
1773 comedi_nonfree_firmware tarball available from
1774 http://www.comedi.org.  However, the driver's support for
1775 loading the firmware through comedi_config is currently
1776 broken.
1777
1778
1779
1780
1781 Driver: me_daq
1782 Description: Meilhaus PCI data acquisition cards
1783 Author: Michael Hillmann <hillmann@syscongroup.de>
1784 Devices: [Meilhaus] ME-2600i (me_daq), ME-2000i
1785 Status: experimental
1786
1787 Supports:
1788
1789     Analog Output
1790
1791 Configuration options:
1792
1793     [0] - PCI bus number (optional)
1794     [1] - PCI slot number (optional)
1795
1796     If bus/slot is not specified, the first available PCI
1797     device will be used.
1798
1799 The 2600 requires a firmware upload, which can be accomplished
1800 using the -i or --init-data option of comedi_config.
1801 The firmware can be
1802 found in the comedi_nonfree_firmware tarball available
1803 from http://www.comedi.org
1804
1805
1806
1807
1808 Driver: mpc624
1809 Description: Micro/sys MPC-624 PC/104 board
1810 Devices: [Micro/sys] MPC-624 (mpc624)
1811 Author: Stanislaw Raczynski <sraczynski@op.pl>
1812 Updated: Thu, 15 Sep 2005 12:01:18 +0200
1813 Status: working
1814
1815     The Micro/sys MPC-624 board is based on the LTC2440 24-bit sigma-delta
1816     ADC chip.
1817     
1818     Subdevices supported by the driver:
1819     - Analog In:   supported
1820     - Digital I/O: not supported
1821     - LEDs:        not supported
1822     - EEPROM:      not supported
1823
1824 Configuration Options:
1825   [0] - I/O base address
1826   [1] - convertion rate
1827             Convertion rate  RMS noise  Effective Number Of Bits
1828          0      3.52kHz        23uV                17
1829          1      1.76kHz       3.5uV                20
1830          2       880Hz         2uV                21.3
1831          3       440Hz        1.4uV               21.8
1832          4       220Hz         1uV                22.4
1833          5       110Hz        750uV               22.9
1834          6       55Hz         510nV               23.4
1835          7      27.5Hz        375nV                24 
1836          8      13.75Hz       250nV               24.4
1837          9      6.875Hz       200nV               24.6
1838    [2] - voltage range
1839          0      -1.01V .. +1.01V
1840          1      -10.1V .. +10.1V
1841
1842
1843
1844 Driver: mpc8260cpm
1845 Description: MPC8260 CPM module generic digital I/O lines
1846 Devices: [Motorola] MPC8260 CPM (mpc8260cpm)
1847 Author: ds
1848 Status: experimental
1849 Updated: Sat, 16 Mar 2002 17:34:48 -0800
1850
1851 This driver is specific to the Motorola MPC8260 processor, allowing
1852 you to access the processor's generic digital I/O lines.
1853
1854 It is apparently missing some code.
1855
1856
1857
1858 Driver: multiq3
1859 Description: Quanser Consulting MultiQ-3
1860 Author: Anders Blomdell <anders.blomdell@control.lth.se>
1861 Status: works
1862 Devices: [Quanser Consulting] MultiQ-3 (multiq3)
1863
1864
1865
1866
1867 Driver: ni_6527
1868 Description: National Instruments 6527
1869 Author: ds
1870 Status: works
1871 Devices: [National Instruments] PCI-6527 (ni6527), PXI-6527
1872 Updated: Sat, 25 Jan 2003 13:24:40 -0800
1873
1874
1875
1876
1877
1878 Driver: ni_65xx
1879 Description: National Instruments 65xx static dio boards
1880 Author: Jon Grierson <jd@renko.co.uk>, Frank Mori Hess <fmhess@users.sourceforge.net>
1881 Status: testing
1882 Devices: [National Instruments] PCI-6509 (ni_65xx), PXI-6509, PCI-6510, PCI-6511,
1883   PXI-6511, PCI-6512, PXI-6512, PCI-6513, PXI-6513, PCI-6514, PXI-6514, PCI-6515,
1884   PXI-6515, PCI-6516, PCI-6517, PCI-6518, PCI-6519, PCI-6520, PCI-6521, PXI-6521,
1885   PCI-6528, PXI-6528
1886 Updated: Wed Oct 18 08:59:11 EDT 2006
1887
1888 Based on the PCI-6527 driver by ds.
1889 The interrupt subdevice (subdevice 3) is probably broken for all boards
1890 except maybe the 6514.
1891
1892
1893
1894
1895 Driver: ni_660x
1896 Description: National Instruments 660x counter/timer boards
1897 Devices:
1898 [National Instruments] PCI-6601 (ni_660x), PCI-6602, PXI-6602,
1899         PXI-6608
1900 Author: J.P. Mellor <jpmellor@rose-hulman.edu>,
1901         Herman.Bruyninckx@mech.kuleuven.ac.be,
1902         Wim.Meeussen@mech.kuleuven.ac.be,
1903         Klaas.Gadeyne@mech.kuleuven.ac.be,
1904         Frank Mori Hess <fmhess@users.sourceforge.net>
1905 Updated: Thu Oct 18 12:56:06 EDT 2007
1906 Status: experimental
1907
1908 Encoders work.  PulseGeneration (both single pulse and pulse train)
1909 works. Buffered commands work for input but not output.
1910
1911 References:
1912 DAQ 660x Register-Level Programmer Manual  (NI 370505A-01)
1913 DAQ 6601/6602 User Manual (NI 322137B-01)
1914
1915
1916
1917
1918 Driver: ni_670x
1919 Description: National Instruments 670x
1920 Author: Bart Joris <bjoris@advalvas.be>
1921 Updated: Wed, 11 Dec 2002 18:25:35 -0800
1922 Devices: [National Instruments] PCI-6703 (ni_670x), PCI-6704
1923 Status: unknown
1924
1925 Commands are not supported.
1926
1927
1928
1929 Driver: ni_at_a2150
1930 Description: National Instruments AT-A2150
1931 Author: Frank Mori Hess
1932 Status: works
1933 Devices: [National Instruments] AT-A2150C (at_a2150c), AT-2150S (at_a2150s)
1934
1935 If you want to ac couple the board's inputs, use AREF_OTHER.
1936
1937 Configuration options:
1938   [0] - I/O port base address
1939   [1] - IRQ (optional, required for timed conversions)
1940   [2] - DMA (optional, required for timed conversions)
1941
1942
1943
1944
1945 Driver: ni_at_ao
1946 Description: National Instruments AT-AO-6/10
1947 Devices: [National Instruments] AT-AO-6 (at-ao-6), AT-AO-10 (at-ao-10)
1948 Status: should work
1949 Author: ds
1950 Updated: Sun Dec 26 12:26:28 EST 2004
1951
1952 Configuration options:
1953   [0] - I/O port base address
1954   [1] - IRQ (unused)
1955   [2] - DMA (unused)
1956   [3] - analog output range, set by jumpers on hardware (0 for -10 to 10V bipolar, 1 for 0V to 10V unipolar)
1957
1958
1959
1960
1961 Driver: ni_atmio16d
1962 Description: National Instruments AT-MIO-16D
1963 Author: Chris R. Baugher <baugher@enteract.com>
1964 Status: unknown
1965 Devices: [National Instruments] AT-MIO-16 (atmio16), AT-MIO-16D (atmio16d)
1966
1967
1968
1969 Driver: ni_atmio
1970 Description: National Instruments AT-MIO-E series
1971 Author: ds
1972 Devices: [National Instruments] AT-MIO-16E-1 (ni_atmio),
1973   AT-MIO-16E-2, AT-MIO-16E-10, AT-MIO-16DE-10, AT-MIO-64E-3,
1974   AT-MIO-16XE-50, AT-MIO-16XE-10, AT-AI-16XE-10
1975 Status: works
1976 Updated: Thu May  1 20:03:02 CDT 2003
1977
1978 The driver has 2.6 kernel isapnp support, and
1979 will automatically probe for a supported board if the
1980 I/O base is left unspecified with comedi_config.
1981 However, many of
1982 the isapnp id numbers are unknown.  If your board is not
1983 recognized, please send the output of 'cat /proc/isapnp'
1984 (you may need to modprobe the isa-pnp module for
1985 /proc/isapnp to exist) so the
1986 id numbers for your board can be added to the driver.
1987
1988 Otherwise, you can use the isapnptools package to configure
1989 your board.  Use isapnp to
1990 configure the I/O base and IRQ for the board, and then pass
1991 the same values as
1992 parameters in comedi_config.  A sample isapnp.conf file is included
1993 in the etc/ directory of Comedilib.
1994
1995 Comedilib includes a utility to autocalibrate these boards.  The
1996 boards seem to boot into a state where the all calibration DACs
1997 are at one extreme of their range, thus the default calibration
1998 is terrible.  Calibration at boot is strongly encouraged.
1999
2000 To use the extended digital I/O on some of the boards, enable the
2001 8255 driver when configuring the Comedi source tree.
2002
2003 External triggering is supported for some events.  The channel index
2004 (scan_begin_arg, etc.) maps to PFI0 - PFI9.
2005
2006 Some of the more esoteric triggering possibilities of these boards
2007 are not supported.
2008
2009
2010
2011 Driver: ni_daq_700
2012 Description: National Instruments PCMCIA DAQCard-700 DIO only
2013 Author: Fred Brooks <nsaspook@nsaspook.com>,
2014   based on ni_daq_dio24 by Daniel Vecino Castel <dvecino@able.es>
2015 Devices: [National Instruments] PCMCIA DAQ-Card-700 (ni_daq_700)
2016 Status: works
2017 Updated: Thu, 21 Feb 2008 12:07:20 +0000
2018
2019 The daqcard-700 appears in Comedi as a single digital I/O subdevice with
2020 16 channels.  The channel 0 corresponds to the daqcard-700's output
2021 port, bit 0; channel 8 corresponds to the input port, bit 0.
2022
2023 Direction configuration: channels 0-7 output, 8-15 input (8225 device
2024 emu as port A output, port B input, port C N/A).
2025
2026 IRQ is assigned but not used.
2027
2028
2029
2030 Driver: ni_daq_dio24
2031 Description: National Instruments PCMCIA DAQ-Card DIO-24
2032 Author: Daniel Vecino Castel <dvecino@able.es>
2033 Devices: [National Instruments] PCMCIA DAQ-Card DIO-24 (ni_daq_dio24)
2034 Status: ?
2035 Updated: Thu, 07 Nov 2002 21:53:06 -0800
2036
2037 This is just a wrapper around the 8255.o driver to properly handle
2038 the PCMCIA interface.
2039
2040
2041
2042 Driver: ni_labpc
2043 Description: National Instruments Lab-PC (& compatibles)
2044 Author: Frank Mori Hess <fmhess@users.sourceforge.net>
2045 Devices: [National Instruments] Lab-PC-1200 (labpc-1200),
2046   Lab-PC-1200AI (labpc-1200ai), Lab-PC+ (lab-pc+), PCI-1200 (ni_labpc)
2047 Status: works
2048
2049 Tested with lab-pc-1200.  For the older Lab-PC+, not all input ranges
2050 and analog references will work, the available ranges/arefs will
2051 depend on how you have configured the jumpers on your board
2052 (see your owner's manual).
2053
2054 Kernel-level ISA plug-and-play support for the lab-pc-1200
2055 boards has not
2056 yet been added to the driver, mainly due to the fact that
2057 I don't know the device id numbers.  If you have one
2058 of these boards,
2059 please file a bug report at https://bugs.comedi.org/
2060 so I can get the necessary information from you.
2061
2062 The 1200 series boards have onboard calibration dacs for correcting
2063 analog input/output offsets and gains.  The proper settings for these
2064 caldacs are stored on the board's eeprom.  To read the caldac values
2065 from the eeprom and store them into a file that can be then be used by
2066 comedilib, use the comedi_calibrate program.
2067
2068 Configuration options - ISA boards:
2069   [0] - I/O port base address
2070   [1] - IRQ (optional, required for timed or externally triggered conversions)
2071   [2] - DMA channel (optional)
2072
2073 Configuration options - PCI boards:
2074   [0] - bus (optional)
2075   [1] - slot (optional)
2076
2077 The Lab-pc+ has quirky chanlist requirements
2078 when scanning multiple channels.  Multiple channel scan
2079 sequence must start at highest channel, then decrement down to
2080 channel 0.  The rest of the cards can scan down like lab-pc+ or scan
2081 up from channel zero.  Chanlists consisting of all one channel
2082 are also legal, and allow you to pace conversions in bursts.
2083
2084
2085
2086
2087 Driver: ni_labpc_cs
2088 Description: National Instruments Lab-PC (& compatibles)
2089 Author: Frank Mori Hess <fmhess@users.sourceforge.net>
2090 Devices: [National Instruments] DAQCard-1200 (daqcard-1200)
2091 Status: works
2092
2093 Thanks go to Fredrik Lingvall for much testing and perseverance in
2094 helping to debug daqcard-1200 support.
2095
2096 The 1200 series boards have onboard calibration dacs for correcting
2097 analog input/output offsets and gains.  The proper settings for these
2098 caldacs are stored on the board's eeprom.  To read the caldac values
2099 from the eeprom and store them into a file that can be then be used by
2100 comedilib, use the comedi_calibrate program.
2101
2102 Configuration options:
2103   none
2104
2105 The daqcard-1200 has quirky chanlist requirements
2106 when scanning multiple channels.  Multiple channel scan
2107 sequence must start at highest channel, then decrement down to
2108 channel 0.  Chanlists consisting of all one channel
2109 are also legal, and allow you to pace conversions in bursts.
2110
2111
2112
2113
2114 Driver: ni_mio_cs
2115 Description: National Instruments DAQCard E series
2116 Author: ds
2117 Status: works
2118 Devices: [National Instruments] DAQCard-AI-16XE-50 (ni_mio_cs),
2119   DAQCard-AI-16E-4, DAQCard-6062E, DAQCard-6024E, DAQCard-6036E
2120 Updated: Thu Oct 23 19:43:17 CDT 2003
2121
2122 See the notes in the ni_atmio.o driver.
2123
2124
2125
2126 Driver: ni_pcidio
2127 Description: National Instruments PCI-DIO32HS, PCI-DIO96, PCI-6533, PCI-6503
2128 Author: ds
2129 Status: works
2130 Devices: [National Instruments] PCI-DIO-32HS (ni_pcidio), PXI-6533,
2131   PCI-DIO-96, PCI-DIO-96B, PXI-6508, PCI-6503, PCI-6503B, PCI-6503X,
2132   PXI-6503, PCI-6533, PCI-6534
2133 Updated: Sun, 21 Apr 2002 21:03:38 -0700
2134
2135 The DIO-96 appears as four 8255 subdevices.  See the 8255
2136 driver notes for details.
2137
2138 The DIO32HS board appears as one subdevice, with 32 channels.
2139 Each channel is individually I/O configurable.  The channel order
2140 is 0=A0, 1=A1, 2=A2, ... 8=B0, 16=C0, 24=D0.  The driver only
2141 supports simple digital I/O; no handshaking is supported.
2142
2143 DMA mostly works for the PCI-DIO32HS, but only in timed input mode.
2144
2145 The PCI-DIO-32HS/PCI-6533 has a configurable external trigger. Setting
2146 scan_begin_arg to 0 or CR_EDGE triggers on the leading edge. Setting
2147 scan_begin_arg to CR_INVERT or (CR_EDGE | CR_INVERT) triggers on the
2148 trailing edge.
2149
2150 This driver could be easily modified to support AT-MIO32HS and
2151 AT-MIO96.
2152
2153 The PCI-6534 requires a firmware upload after power-up to work, the
2154 firmware data and instructions for loading it with comedi_config
2155 it are contained in the
2156 comedi_nonfree_firmware tarball available from http://www.comedi.org
2157
2158
2159
2160 Driver: ni_pcimio
2161 Description: National Instruments PCI-MIO-E series and M series (all boards)
2162 Author: ds, John Hallen, Frank Mori Hess, Rolf Mueller, Herbert Peremans,
2163   Herman Bruyninckx, Terry Barnaby
2164 Status: works
2165 Devices: [National Instruments] PCI-MIO-16XE-50 (ni_pcimio),
2166   PCI-MIO-16XE-10, PXI-6030E, PCI-MIO-16E-1, PCI-MIO-16E-4, PCI-6014, PCI-6040E,
2167   PXI-6040E, PCI-6030E, PCI-6031E, PCI-6032E, PCI-6033E, PCI-6071E, PCI-6023E,
2168   PCI-6024E, PCI-6025E, PXI-6025E, PCI-6034E, PCI-6035E, PCI-6052E,
2169   PCI-6110, PCI-6111, PCI-6220, PCI-6221, PCI-6224, PXI-6224,
2170   PCI-6225, PXI-6225, PCI-6229, PCI-6250, PCI-6251, PCIe-6251, PXIe-6251,
2171   PCI-6254, PCI-6259, PCIe-6259,
2172   PCI-6280, PCI-6281, PXI-6281, PCI-6284, PCI-6289,
2173   PCI-6711, PXI-6711, PCI-6713, PXI-6713,
2174   PXI-6071E, PCI-6070E, PXI-6070E,
2175   PXI-6052E, PCI-6036E, PCI-6731, PCI-6733, PXI-6733,
2176   PCI-6143, PXI-6143
2177 Updated: Tue, 15 Nov 2011 15:10:37 +0000
2178
2179 These boards are almost identical to the AT-MIO E series, except that
2180 they use the PCI bus instead of ISA (i.e., AT).  See the notes for
2181 the ni_atmio.o driver for additional information about these boards.
2182
2183 Autocalibration is supported on many of the devices, using the
2184 comedi_calibrate (or comedi_soft_calibrate for m-series) utility.
2185 M-Series boards do analog input and analog output calibration entirely
2186 in software. The software calibration corrects
2187 the analog input for offset, gain and
2188 nonlinearity.  The analog outputs are corrected for offset and gain.
2189 See the comedilib documentation on comedi_get_softcal_converter() for
2190 more information.
2191
2192 By default, the driver uses DMA to transfer analog input data to
2193 memory.  When DMA is enabled, not all triggering features are
2194 supported.
2195
2196 Digital I/O may not work on 673x.
2197
2198 Note that the PCI-6143 is a simultaineous sampling device with 8 convertors.
2199 With this board all of the convertors perform one simultaineous sample during
2200 a scan interval. The period for a scan is used for the convert time in a
2201 Comedi cmd. The convert trigger source is normally set to TRIG_NOW by default.
2202
2203 The RTSI trigger bus is supported on these cards on
2204 subdevice 10. See the comedilib documentation for details.
2205
2206 Information (number of channels, bits, etc.) for some devices may be
2207 incorrect.  Please check this and submit a bug if there are problems
2208 for your device.
2209
2210 SCXI is probably broken for m-series boards.
2211
2212 Bugs:
2213  - When DMA is enabled, COMEDI_EV_CONVERT does
2214    not work correctly.
2215
2216
2217
2218
2219 Driver: ni_tio
2220 Description: National Instruments general purpose counters
2221 Devices:
2222 Author: J.P. Mellor <jpmellor@rose-hulman.edu>,
2223         Herman.Bruyninckx@mech.kuleuven.ac.be,
2224         Wim.Meeussen@mech.kuleuven.ac.be,
2225         Klaas.Gadeyne@mech.kuleuven.ac.be,
2226         Frank Mori Hess <fmhess@users.sourceforge.net>
2227 Updated: Thu Nov 16 09:50:32 EST 2006
2228 Status: works
2229
2230 This module is not used directly by end-users.  Rather, it
2231 is used by other drivers (for example ni_660x and ni_pcimio)
2232 to provide support for NI's general purpose counters.  It was
2233 originally based on the counter code from ni_660x.c and
2234 ni_mio_common.c.
2235
2236 References:
2237 DAQ 660x Register-Level Programmer Manual  (NI 370505A-01)
2238 DAQ 6601/6602 User Manual (NI 322137B-01)
2239 340934b.pdf  DAQ-STC reference manual
2240
2241
2242
2243
2244 Driver: ni_tiocmd
2245 Description: National Instruments general purpose counters command support
2246 Devices:
2247 Author: J.P. Mellor <jpmellor@rose-hulman.edu>,
2248         Herman.Bruyninckx@mech.kuleuven.ac.be,
2249         Wim.Meeussen@mech.kuleuven.ac.be,
2250         Klaas.Gadeyne@mech.kuleuven.ac.be,
2251         Frank Mori Hess <fmhess@users.sourceforge.net>
2252 Updated: Fri, 11 Apr 2008 12:32:35 +0100
2253 Status: works
2254
2255 This module is not used directly by end-users.  Rather, it
2256 is used by other drivers (for example ni_660x and ni_pcimio)
2257 to provide command support for NI's general purpose counters.
2258 It was originally split out of ni_tio.c to stop the 'ni_tio'
2259 module depending on the 'mite' module.
2260
2261 References:
2262 DAQ 660x Register-Level Programmer Manual  (NI 370505A-01)
2263 DAQ 6601/6602 User Manual (NI 322137B-01)
2264 340934b.pdf  DAQ-STC reference manual
2265
2266
2267
2268
2269 Driver: pcl711
2270 Description: Advantech PCL-711 and 711b, ADLink ACL-8112
2271 Author: ds, Janne Jalkanen <jalkanen@cs.hut.fi>, Eric Bunn <ebu@cs.hut.fi>
2272 Status: mostly complete
2273 Devices: [Advantech] PCL-711 (pcl711), PCL-711B (pcl711b),
2274   [AdLink] ACL-8112HG (acl8112hg), ACL-8112DG (acl8112dg)
2275
2276 Since these boards do not have DMA or FIFOs, only immediate mode is
2277 supported.
2278
2279
2280
2281
2282 Driver: pcl724
2283 Description: Advantech PCL-724, PCL-722, PCL-731 ADLink ACL-7122, ACL-7124,
2284   PET-48DIO
2285 Author: Michal Dobes <dobes@tesnet.cz>
2286 Devices: [Advantech] PCL-724 (pcl724), PCL-722 (pcl722), PCL-731 (pcl731),
2287   [ADLink] ACL-7122 (acl7122), ACL-7124 (acl7124), PET-48DIO (pet48dio)
2288 Status: untested
2289
2290 This is driver for digital I/O boards PCL-722/724/731 with 144/24/48 DIO
2291 and for digital I/O boards ACL-7122/7124/PET-48DIO with 144/24/48 DIO.
2292 It need 8255.o for operations and only immediate mode is supported.
2293 See the source for configuration details.
2294
2295
2296
2297 Driver: pcl725
2298 Description: Advantech PCL-725 (& compatibles)
2299 Author: ds
2300 Status: unknown
2301 Devices: [Advantech] PCL-725 (pcl725)
2302
2303
2304
2305 Driver: pcl726
2306 Description: Advantech PCL-726 & compatibles
2307 Author: ds
2308 Status: untested
2309 Devices: [Advantech] PCL-726 (pcl726), PCL-727 (pcl727), PCL-728 (pcl728),
2310   [ADLink] ACL-6126 (acl6126), ACL-6128 (acl6128)
2311
2312 Interrupts are not supported.
2313
2314     Options for PCL-726:
2315      [0] - IO Base
2316      [2]...[7] - D/A output range for channel 1-6:
2317                0: 0-5V, 1: 0-10V, 2: +/-5V, 3: +/-10V,
2318                4: 4-20mA, 5: unknown (external reference)
2319
2320     Options for PCL-727:
2321      [0] - IO Base
2322      [2]...[13] - D/A output range for channel 1-12:
2323                0: 0-5V, 1: 0-10V, 2: +/-5V,
2324                3: 4-20mA
2325
2326     Options for PCL-728 and ACL-6128:
2327      [0] - IO Base
2328      [2], [3] - D/A output range for channel 1 and 2:
2329                0: 0-5V, 1: 0-10V, 2: +/-5V, 3: +/-10V,
2330                4: 4-20mA, 5: 0-20mA
2331
2332     Options for ACL-6126:
2333      [0] - IO Base
2334      [1] - IRQ (0=disable, 3, 5, 6, 7, 9, 10, 11, 12, 15) (currently ignored)
2335      [2]...[7] - D/A output range for channel 1-6:
2336                0: 0-5V, 1: 0-10V, 2: +/-5V, 3: +/-10V,
2337                4: 4-20mA
2338
2339
2340
2341 Driver: pcl730
2342 Description: Advantech PCL-730 (& compatibles)
2343 Author: José Luis Sánchez (jsanchezv@teleline.es)
2344 Status: untested
2345 Devices: [Advantech] PCL-730 (pcl730), [ICP] ISO-730 (iso730),
2346                  [Adlink] ACL-7130 (acl7130)
2347
2348 Interrupts are not supported.
2349 The ACL-7130 card have an 8254 timer/counter not supported by this driver.
2350
2351
2352
2353 Driver: pcl812
2354 Description: Advantech PCL-812/PG, PCL-813/B,
2355              ADLink ACL-8112DG/HG/PG, ACL-8113, ACL-8216,
2356              ICP DAS A-821PGH/PGL/PGL-NDA, A-822PGH/PGL, A-823PGH/PGL, A-826PG,
2357              ICP DAS ISO-813
2358 Author: Michal Dobes <dobes@tesnet.cz>
2359 Devices: [Advantech] PCL-812 (pcl812), PCL-812PG (pcl812pg),
2360   PCL-813 (pcl813), PCL-813B (pcl813b), [ADLink] ACL-8112DG (acl8112dg),
2361   ACL-8112HG (acl8112hg), ACL-8113 (acl-8113), ACL-8216 (acl8216),
2362   [ICP] ISO-813 (iso813), A-821PGH (a821pgh), A-821PGL (a821pgl),
2363   A-821PGL-NDA (a821pclnda), A-822PGH (a822pgh), A-822PGL (a822pgl),
2364   A-823PGH (a823pgh), A-823PGL (a823pgl), A-826PG (a826pg)
2365 Updated: Mon, 06 Aug 2007 12:03:15 +0100
2366 Status: works (I hope. My board fire up under my hands
2367                and I cann't test all features.)
2368
2369 This driver supports insn and cmd interfaces. Some boards support only insn
2370 becouse their hardware don't allow more (PCL-813/B, ACL-8113, ISO-813).
2371 Data transfer over DMA is supported only when you measure only one
2372 channel, this is too hardware limitation of these boards.
2373
2374 Options for PCL-812:
2375   [0] - IO Base
2376   [1] - IRQ  (0=disable, 2, 3, 4, 5, 6, 7; 10, 11, 12, 14, 15)
2377   [2] - DMA  (0=disable, 1, 3)
2378   [3] - 0=trigger source is internal 8253 with 2MHz clock
2379         1=trigger source is external
2380   [4] - 0=A/D input range is +/-10V
2381         1=A/D input range is +/-5V
2382         2=A/D input range is +/-2.5V
2383         3=A/D input range is +/-1.25V
2384         4=A/D input range is +/-0.625V
2385         5=A/D input range is +/-0.3125V
2386   [5] - 0=D/A outputs 0-5V  (internal reference -5V)
2387         1=D/A outputs 0-10V (internal reference -10V)
2388         2=D/A outputs unknow (external reference)
2389
2390 Options for PCL-812PG, ACL-8112PG:
2391   [0] - IO Base
2392   [1] - IRQ  (0=disable, 2, 3, 4, 5, 6, 7; 10, 11, 12, 14, 15)
2393   [2] - DMA  (0=disable, 1, 3)
2394   [3] - 0=trigger source is internal 8253 with 2MHz clock
2395         1=trigger source is external
2396   [4] - 0=A/D have max +/-5V input
2397         1=A/D have max +/-10V input
2398   [5] - 0=D/A outputs 0-5V  (internal reference -5V)
2399         1=D/A outputs 0-10V (internal reference -10V)
2400         2=D/A outputs unknow (external reference)
2401
2402 Options for ACL-8112DG/HG, A-822PGL/PGH, A-823PGL/PGH, ACL-8216, A-826PG:
2403   [0] - IO Base
2404   [1] - IRQ  (0=disable, 2, 3, 4, 5, 6, 7; 10, 11, 12, 14, 15)
2405   [2] - DMA  (0=disable, 1, 3)
2406   [3] - 0=trigger source is internal 8253 with 2MHz clock
2407         1=trigger source is external
2408   [4] - 0=A/D channels are S.E.
2409         1=A/D channels are DIFF
2410   [5] - 0=D/A outputs 0-5V  (internal reference -5V)
2411         1=D/A outputs 0-10V (internal reference -10V)
2412         2=D/A outputs unknow (external reference)
2413
2414 Options for A-821PGL/PGH:
2415   [0] - IO Base
2416   [1] - IRQ  (0=disable, 2, 3, 4, 5, 6, 7)
2417   [2] - 0=A/D channels are S.E.
2418         1=A/D channels are DIFF
2419   [3] - 0=D/A output 0-5V  (internal reference -5V)
2420         1=D/A output 0-10V (internal reference -10V)
2421
2422 Options for A-821PGL-NDA:
2423   [0] - IO Base
2424   [1] - IRQ  (0=disable, 2, 3, 4, 5, 6, 7)
2425   [2] - 0=A/D channels are S.E.
2426         1=A/D channels are DIFF
2427
2428 Options for PCL-813:
2429   [0] - IO Base
2430
2431 Options for PCL-813B:
2432   [0] - IO Base
2433   [1] - 0= bipolar inputs
2434         1= unipolar inputs
2435
2436 Options for ACL-8113, ISO-813:
2437   [0] - IO Base
2438   [1] - 0= 10V bipolar inputs
2439         1= 10V unipolar inputs
2440         2= 20V bipolar inputs
2441         3= 20V unipolar inputs
2442
2443
2444
2445 Driver: pcl816
2446 Description: Advantech PCL-816 cards, PCL-814
2447 Author: Juan Grigera <juan@grigera.com.ar>
2448 Devices: [Advantech] PCL-816 (pcl816), PCL-814B (pcl814b)
2449 Status: works
2450 Updated: Tue,  2 Apr 2002 23:15:21 -0800
2451
2452 PCL 816 and 814B have 16 SE/DIFF ADCs, 16 DACs, 16 DI and 16 DO.
2453 Differences are at resolution (16 vs 12 bits).
2454
2455 The driver support AI command mode, other subdevices not written.
2456
2457 Analog output and digital input and output are not supported.
2458
2459 Configuration Options:
2460   [0] - IO Base
2461   [1] - IRQ     (0=disable, 2, 3, 4, 5, 6, 7)
2462   [2] - DMA     (0=disable, 1, 3)
2463   [3] - 0, 10=10MHz clock for 8254
2464             1= 1MHz clock for 8254
2465
2466
2467
2468
2469 Driver: pcl818
2470 Description: Advantech PCL-818 cards, PCL-718
2471 Author: Michal Dobes <dobes@tesnet.cz>
2472 Devices: [Advantech] PCL-818L (pcl818l), PCL-818H (pcl818h),
2473   PCL-818HD (pcl818hd), PCL-818HG (pcl818hg), PCL-818 (pcl818),
2474   PCL-718 (pcl718)
2475 Status: works
2476
2477 All cards have 16 SE/8 DIFF ADCs, one or two DACs, 16 DI and 16 DO.
2478 Differences are only at maximal sample speed, range list and FIFO
2479 support.
2480 The driver support AI mode 0, 1, 3 other subdevices (AO, DI, DO) support
2481 only mode 0. If DMA/FIFO/INT are disabled then AI support only mode 0.
2482 PCL-818HD and PCL-818HG support 1kword FIFO. Driver support this FIFO
2483 but this code is untested.
2484 A word or two about DMA. Driver support DMA operations at two ways:
2485 1) DMA uses two buffers and after one is filled then is generated
2486    INT and DMA restart with second buffer. With this mode I'm unable run
2487    more that 80Ksamples/secs without data dropouts on K6/233.
2488 2) DMA uses one buffer and run in autoinit mode and the data are
2489    from DMA buffer moved on the fly with 2kHz interrupts from RTC.
2490    This mode is used if the interrupt 8 is available for allocation.
2491    If not, then first DMA mode is used. With this I can run at
2492    full speed one card (100ksamples/secs) or two cards with
2493    60ksamples/secs each (more is problem on account of ISA limitations).
2494    To use this mode you must have compiled  kernel with disabled
2495    "Enhanced Real Time Clock Support".
2496    Maybe you can have problems if you use xntpd or similar.
2497    If you've data dropouts with DMA mode 2 then:
2498     a) disable IDE DMA
2499     b) switch text mode console to fb.
2500
2501    Options for PCL-818L:
2502     [0] - IO Base
2503     [1] - IRQ   (0=disable, 2, 3, 4, 5, 6, 7)
2504     [2] - DMA   (0=disable, 1, 3)
2505     [3] - 0, 10=10MHz clock for 8254
2506               1= 1MHz clock for 8254
2507     [4] - 0,  5=A/D input  -5V.. +5V
2508           1, 10=A/D input -10V..+10V
2509     [5] - 0,  5=D/A output 0-5V  (internal reference -5V)
2510           1, 10=D/A output 0-10V (internal reference -10V)
2511           2    =D/A output unknow (external reference)
2512
2513    Options for PCL-818, PCL-818H:
2514     [0] - IO Base
2515     [1] - IRQ   (0=disable, 2, 3, 4, 5, 6, 7)
2516     [2] - DMA   (0=disable, 1, 3)
2517     [3] - 0, 10=10MHz clock for 8254
2518               1= 1MHz clock for 8254
2519     [4] - 0,  5=D/A output 0-5V  (internal reference -5V)
2520           1, 10=D/A output 0-10V (internal reference -10V)
2521           2    =D/A output unknow (external reference)
2522
2523    Options for PCL-818HD, PCL-818HG:
2524     [0] - IO Base
2525     [1] - IRQ   (0=disable, 2, 3, 4, 5, 6, 7)
2526     [2] - DMA/FIFO  (-1=use FIFO, 0=disable both FIFO and DMA,
2527                       1=use DMA ch 1, 3=use DMA ch 3)
2528     [3] - 0, 10=10MHz clock for 8254
2529               1= 1MHz clock for 8254
2530     [4] - 0,  5=D/A output 0-5V  (internal reference -5V)
2531           1, 10=D/A output 0-10V (internal reference -10V)
2532           2    =D/A output unknow (external reference)
2533
2534    Options for PCL-718:
2535     [0] - IO Base
2536     [1] - IRQ   (0=disable, 2, 3, 4, 5, 6, 7)
2537     [2] - DMA   (0=disable, 1, 3)
2538     [3] - 0, 10=10MHz clock for 8254
2539               1= 1MHz clock for 8254
2540     [4] -     0=A/D Range is +/-10V
2541               1=             +/-5V
2542               2=             +/-2.5V
2543               3=             +/-1V
2544               4=             +/-0.5V
2545               5=             user defined bipolar
2546               6=             0-10V
2547               7=             0-5V
2548               8=             0-2V
2549               9=             0-1V
2550              10=             user defined unipolar
2551     [5] - 0,  5=D/A outputs 0-5V  (internal reference -5V)
2552           1, 10=D/A outputs 0-10V (internal reference -10V)
2553               2=D/A outputs unknow (external reference)
2554     [6] - 0, 60=max  60kHz A/D sampling
2555           1,100=max 100kHz A/D sampling (PCL-718 with Option 001 installed)
2556
2557
2558
2559
2560 Driver: pcm3724
2561 Description: Advantech PCM-3724
2562 Author: Drew Csillag <drew_csillag@yahoo.com>
2563 Devices: [Advantech] PCM-3724 (pcm724)
2564 Status: tested
2565
2566 This is driver for digital I/O boards PCM-3724 with 48 DIO.
2567 It needs 8255.o for operations and only immediate mode is supported.
2568 See the source for configuration details.
2569
2570 Copy/pasted/hacked from pcm724.c
2571
2572
2573
2574 Driver: pcm3730
2575 Description: PCM3730
2576 Author: Blaine Lee
2577 Devices: [Advantech] PCM-3730 (pcm3730)
2578 Status: unknown
2579
2580 Configuration options:
2581   [0] - I/O port base
2582
2583
2584
2585 Driver: pcmad
2586 Description: Winsystems PCM-A/D12, PCM-A/D16
2587 Author: ds
2588 Devices: [Winsystems] PCM-A/D12 (pcmad12), PCM-A/D16 (pcmad16)
2589 Status: untested
2590
2591 This driver was written on a bet that I couldn't write a driver
2592 in less than 2 hours.  I won the bet, but never got paid.  =(
2593
2594 Configuration options:
2595   [0] - I/O port base
2596   [1] - unused
2597   [2] - Analog input reference
2598           0 = single ended
2599           1 = differential
2600   [3] - Analog input encoding (must match jumpers)
2601           0 = straight binary
2602           1 = two's complement
2603
2604
2605
2606 Driver: pcmda12
2607 Description: A driver for the Winsystems PCM-D/A-12
2608 Devices: [Winsystems] PCM-D/A-12 (pcmda12)
2609 Author: Calin Culianu <calin@ajvar.org>
2610 Updated: Fri, 13 Jan 2006 12:01:01 -0500
2611 Status: works
2612
2613 A driver for the relatively straightforward-to-program PCM-D/A-12.
2614 This board doesn't support commands, and the only way to set its
2615 analog output range is to jumper the board.  As such,
2616 comedi_data_write() ignores the range value specified.
2617
2618 The board uses 16 consecutive I/O addresses starting at the I/O port
2619 base address.  Each address corresponds to the LSB then MSB of a
2620 particular channel from 0-7.
2621
2622 Note that the board is not ISA-PNP capable and thus
2623 needs the I/O port comedi_config parameter.
2624
2625 Note that passing a nonzero value as the second config option will
2626 enable "simultaneous xfer" mode for this board, in which AO writes
2627 will not take effect until a subsequent read of any AO channel.  This
2628 is so that one can speed up programming by preloading all AO registers
2629 with values before simultaneously setting them to take effect with one
2630 read command.
2631
2632 Configuration Options:
2633   [0] - I/O port base address
2634   [1] - Do Simultaneous Xfer (see description)
2635
2636
2637
2638 Driver: pcmmio
2639 Description: A driver for the PCM-MIO multifunction board
2640 Devices: [Winsystems] PCM-MIO (pcmmio)
2641 Author: Calin Culianu <calin@ajvar.org>
2642 Updated: Wed, May 16 2007 16:21:10 -0500
2643 Status: works
2644
2645 A driver for the relatively new PCM-MIO multifunction board from
2646 Winsystems.  This board is a PC-104 based I/O board.  It contains
2647 four subdevices:
2648   subdevice 0 - 16 channels of 16-bit AI
2649   subdevice 1 - 8 channels of 16-bit AO
2650   subdevice 2 - first 24 channels of the 48 channel of DIO (with edge-triggered interrupt support)
2651   subdevice 3 - last 24 channels of the 48 channel DIO (no interrupt support for this bank of channels)
2652
2653   Some notes:
2654
2655   Synchronous reads and writes are the only things implemented for AI and AO,
2656   even though the hardware itself can do streaming acquisition, etc.  Anyone
2657   want to add asynchronous I/O for AI/AO as a feature?  Be my guest...
2658
2659   Asynchronous I/O for the DIO subdevices *is* implemented, however!  They are
2660   basically edge-triggered interrupts for any configuration of the first
2661   24 DIO-lines.
2662
2663   Also note that this interrupt support is untested.
2664
2665   A few words about edge-detection IRQ support (commands on DIO):
2666
2667   * To use edge-detection IRQ support for the DIO subdevice, pass the IRQ
2668     of the board to the comedi_config command.  The board IRQ is not jumpered
2669     but rather configured through software, so any IRQ from 1-15 is OK.
2670
2671   * Due to the genericity of the comedi API, you need to create a special
2672     comedi_command in order to use edge-triggered interrupts for DIO.
2673
2674   * Use comedi_commands with TRIG_NOW.  Your callback will be called each
2675     time an edge is detected on the specified DIO line(s), and the data
2676     values will be two sample_t's, which should be concatenated to form
2677     one 32-bit unsigned int.  This value is the mask of channels that had
2678     edges detected from your channel list.  Note that the bits positions
2679     in the mask correspond to positions in your chanlist when you
2680     specified the command and *not* channel id's!
2681
2682  *  To set the polarity of the edge-detection interrupts pass a nonzero value
2683     for either CR_RANGE or CR_AREF for edge-up polarity, or a zero
2684     value for both CR_RANGE and CR_AREF if you want edge-down polarity.
2685
2686 Configuration Options:
2687   [0] - I/O port base address
2688   [1] - IRQ (optional -- for edge-detect interrupt support only, leave out if you don't need this feature)
2689
2690
2691
2692 Driver: pcmuio
2693 Description: A driver for the PCM-UIO48A and PCM-UIO96A boards from Winsystems.
2694 Devices: [Winsystems] PCM-UIO48A (pcmuio48), PCM-UIO96A (pcmuio96)
2695 Author: Calin Culianu <calin@ajvar.org>
2696 Updated: Fri, 13 Jan 2006 12:01:01 -0500
2697 Status: works
2698
2699 A driver for the relatively straightforward-to-program PCM-UIO48A and
2700 PCM-UIO96A boards from Winsystems.  These boards use either one or two
2701 (in the 96-DIO version) WS16C48 ASIC HighDensity I/O Chips (HDIO).
2702 This chip is interesting in that each I/O line is individually
2703 programmable for INPUT or OUTPUT (thus comedi_dio_config can be done
2704 on a per-channel basis).  Also, each chip supports edge-triggered
2705 interrupts for the first 24 I/O lines.  Of course, since the
2706 96-channel version of the board has two ASICs, it can detect polarity
2707 changes on up to 48 I/O lines.  Since this is essentially an (non-PnP)
2708 ISA board, I/O Address and IRQ selection are done through jumpers on
2709 the board.  You need to pass that information to this driver as the
2710 first and second comedi_config option, respectively.  Note that the
2711 48-channel version uses 16 bytes of IO memory and the 96-channel
2712 version uses 32-bytes (in case you are worried about conflicts).  The
2713 48-channel board is split into two 24-channel comedi subdevices.
2714 The 96-channel board is split into 4 24-channel DIO subdevices.
2715
2716 Note that IRQ support has been added, but it is untested.
2717
2718 To use edge-detection IRQ support, pass the IRQs of both ASICS
2719 (for the 96 channel version) or just 1 ASIC (for 48-channel version).
2720 Then, use use comedi_commands with TRIG_NOW.
2721 Your callback will be called each time an edge is triggered, and the data
2722 values will be two sample_t's, which should be concatenated to form one
2723 32-bit unsigned int.  This value is the mask of channels that had
2724 edges detected from your channel list.  Note that the bits positions
2725 in the mask correspond to positions in your chanlist when you specified
2726 the command and *not* channel id's!
2727
2728 To set the polarity of the edge-detection interrupts pass a nonzero value for
2729 either CR_RANGE or CR_AREF for edge-up polarity, or a zero value for both
2730 CR_RANGE and CR_AREF if you want edge-down polarity.
2731
2732 In the 48-channel version:
2733
2734 On subdev 0, the first 24 channels channels are edge-detect channels.
2735
2736 In the 96-channel board you have the collowing channels that can do edge detection:
2737
2738 subdev 0, channels 0-24  (first 24 channels of 1st ASIC)
2739 subdev 2, channels 0-24  (first 24 channels of 2nd ASIC)
2740
2741 Configuration Options:
2742   [0] - I/O port base address
2743   [1] - IRQ (for first ASIC, or first 24 channels)
2744   [2] - IRQ for second ASIC (pcmuio96 only - IRQ for chans 48-72 .. can be the same as first irq!)
2745
2746
2747
2748 Driver: poc
2749 Description: Generic driver for very simple devices
2750 Author: ds
2751 Devices: [Keithley Metrabyte] DAC-02 (dac02), [Advantech] PCL-733 (pcl733),
2752   PCL-734 (pcl734)
2753 Updated: Sat, 16 Mar 2002 17:34:48 -0800
2754 Status: unknown
2755
2756 This driver is indended to support very simple ISA-based devices,
2757 including:
2758   dac02 - Keithley DAC-02 analog output board
2759   pcl733 - Advantech PCL-733
2760   pcl734 - Advantech PCL-734
2761
2762 Configuration options:
2763   [0] - I/O port base
2764
2765
2766
2767 Driver: quatech_daqp_cs
2768 Description: Quatech DAQP PCMCIA data capture cards
2769 Author: Brent Baccala <baccala@freesoft.org>
2770 Status: works
2771 Devices: [Quatech] DAQP-208 (daqp), DAQP-308
2772
2773
2774
2775 Driver: rtd520
2776 Description: Real Time Devices PCI4520/DM7520
2777 Author: Dan Christian
2778 Devices: [Real Time Devices] DM7520HR-1 (rtd520), DM7520HR-8,
2779   PCI4520, PCI4520-8
2780 Status: Works.  Only tested on DM7520-8.  Not SMP safe.
2781
2782 Configuration options:
2783   [0] - PCI bus of device (optional)
2784           If bus/slot is not specified, the first available PCI
2785           device will be used.
2786   [1] - PCI slot of device (optional)
2787
2788
2789
2790 Driver: rti800
2791 Description: Analog Devices RTI-800/815
2792 Author: ds
2793 Status: unknown
2794 Updated: Fri, 05 Sep 2008 14:50:44 +0100
2795 Devices: [Analog Devices] RTI-800 (rti800), RTI-815 (rti815)
2796
2797 Configuration options:
2798   [0] - I/O port base address
2799   [1] - IRQ
2800   [2] - A/D reference
2801           0 = differential
2802           1 = pseudodifferential (common)
2803           2 = single-ended
2804   [3] - A/D range
2805           0 = [-10,10]
2806           1 = [-5,5]
2807           2 = [0,10]
2808   [4] - A/D encoding
2809           0 = two's complement
2810           1 = straight binary
2811   [5] - DAC 0 range
2812           0 = [-10,10]
2813           1 = [0,10]
2814   [6] - DAC 0 encoding
2815           0 = two's complement
2816           1 = straight binary
2817   [7] - DAC 1 range (same as DAC 0)
2818   [8] - DAC 1 encoding (same as DAC 0)
2819
2820
2821
2822 Driver: rti802
2823 Description: Analog Devices RTI-802
2824 Author: Anders Blomdell <anders.blomdell@control.lth.se>
2825 Devices: [Analog Devices] RTI-802 (rti802)
2826 Status: works
2827
2828 Configuration Options:
2829     [0] - i/o base
2830     [1] - unused
2831     [2] - dac#0  0=two's comp, 1=straight
2832     [3] - dac#0  0=bipolar, 1=unipolar
2833     [4] - dac#1 ...
2834     ...
2835     [17] - dac#7 ...
2836
2837
2838
2839 Driver: s526
2840 Description: Sensoray 526 driver
2841 Devices: [Sensoray] 526 (s526)
2842 Author: Richie
2843         Everett Wang <everett.wang@everteq.com>
2844 Updated: Thu, 14 Sep. 2006
2845 Status: experimental
2846
2847 Encoder works
2848 Analog input works
2849 Analog output works
2850 PWM output works
2851 Commands are not supported yet.
2852
2853 Configuration Options:
2854
2855 comedi_config /dev/comedi0 s526 0x2C0,0x3
2856
2857
2858
2859
2860 Driver: s626
2861 Description: Sensoray 626 driver
2862 Devices: [Sensoray] 626 (s626)
2863 Authors: Gianluca Palli <gpalli@deis.unibo.it>,
2864 Updated: Fri, 15 Feb 2008 10:28:42 +0000
2865 Status: experimental
2866
2867 Configuration options:
2868   [0] - PCI bus of device (optional)
2869   [1] - PCI slot of device (optional)
2870   If bus/slot is not specified, the first supported
2871   PCI device found will be used.
2872
2873 INSN_CONFIG instructions:
2874   analog input:
2875    none
2876
2877   analog output:
2878    none
2879
2880   digital channel:
2881    s626 has 3 dio subdevices (2,3 and 4) each with 16 i/o channels
2882    supported configuration options:
2883    INSN_CONFIG_DIO_QUERY
2884    COMEDI_INPUT
2885    COMEDI_OUTPUT
2886
2887   encoder:
2888    Every channel must be configured before reading.
2889
2890    Example code
2891
2892    insn.insn=INSN_CONFIG;   //configuration instruction
2893    insn.n=1;                //number of operation (must be 1)
2894    insn.data=&initialvalue; //initial value loaded into encoder
2895                             //during configuration
2896    insn.subdev=5;           //encoder subdevice
2897    insn.chanspec=CR_PACK(encoder_channel,0,AREF_OTHER); //encoder_channel
2898                                                         //to configure
2899
2900    comedi_do_insn(cf,&insn); //executing configuration
2901
2902
2903
2904 Driver: serial2002
2905 Description: Driver for serial connected hardware
2906 Devices:
2907 Author: Anders Blomdell
2908 Updated: Fri,  7 Jun 2002 12:56:45 -0700
2909 Status: in development
2910
2911
2912
2913
2914 Driver: skel
2915 Description: Skeleton driver, an example for driver writers
2916 Devices:
2917 Author: ds
2918 Updated: Mon, 18 Mar 2002 15:34:01 -0800
2919 Status: works
2920
2921 This driver is a documented example on how Comedi drivers are
2922 written.
2923
2924 Configuration Options:
2925   none
2926
2927
2928
2929 Driver: ssv_dnp
2930 Description: SSV Embedded Systems DIL/Net-PC
2931 Author: Robert Schwebel <robert@schwebel.de>
2932 Devices: [SSV Embedded Systems] DIL/Net-PC 1486 (dnp-1486)
2933 Status: unknown
2934
2935
2936
2937 Driver: unioxx5
2938 Description: Driver for Fastwel UNIOxx-5 (analog and digital i/o) boards.
2939 Author: Kruchinin Daniil (asgard) <asgard@etersoft.ru>
2940 Status: unknown
2941 Updated: 2006-10-09
2942 Devices: [Fastwel] UNIOxx-5 (unioxx5),
2943
2944  This card supports digital and analog I/O. It written for g01          
2945  subdevices only.                                                       
2946  channels range: 0 .. 23 dio channels                                   
2947  and 0 .. 11 analog modules range                                       
2948  During attaching unioxx5 module displays modules identifiers           
2949  (see dmesg after comedi_config) in format:                             
2950  | [module_number] module_id |                                          
2951
2952
2953
2954
2955 Driver: usbdux
2956 Description: University of Stirling USB DAQ & INCITE Technology Limited
2957 Devices: [ITL] USB-DUX (usbdux.o)
2958 Author: Bernd Porr <BerndPorr@f2s.com>
2959 Updated: 8 Dec 2008
2960 Status: Stable
2961 Configuration options:
2962   You have to upload firmware with the -i option. The
2963   firmware is usually installed under /usr/share/usb or
2964   /usr/local/share/usb or /lib/firmware.
2965
2966 Connection scheme for the counter at the digital port:
2967   0=/CLK0, 1=UP/DOWN0, 2=RESET0, 4=/CLK1, 5=UP/DOWN1, 6=RESET1.
2968   The sampling rate of the counter is approximately 500Hz.
2969
2970 Please note that under USB2.0 the length of the channel list determines
2971 the max sampling rate. If you sample only one channel you get 8kHz
2972 sampling rate. If you sample two channels you get 4kHz and so on.
2973
2974
2975
2976 Driver: usbduxfast
2977 Description: ITL USB-DUXfast
2978 Devices: [ITL] USB-DUX (usbduxfast.o)
2979 Author: Bernd Porr <BerndPorr@f2s.com>
2980 Updated: 08 Dec 2008
2981 Status: stable
2982
2983
2984
2985 Driver: usbduxsigma
2986 Description: University of Stirling USB DAQ & INCITE Technology Limited
2987 Devices: [ITL] USB-DUX (usbduxsigma.o)
2988 Author: Bernd Porr <BerndPorr@f2s.com>
2989 Updated: 21 Jul 2011
2990 Status: testing
2991
2992
2993