Removed comedi_calibrate from comedilib, it is now in its own
authorFrank Mori Hess <fmhess@speakeasy.net>
Sun, 5 Feb 2006 20:56:11 +0000 (20:56 +0000)
committerFrank Mori Hess <fmhess@speakeasy.net>
Sun, 5 Feb 2006 20:56:11 +0000 (20:56 +0000)
module.

48 files changed:
comedi_calibrate/Makefile.am [deleted file]
comedi_calibrate/README [deleted file]
comedi_calibrate/cal_common.c [deleted file]
comedi_calibrate/calib.h [deleted file]
comedi_calibrate/cb.c [deleted file]
comedi_calibrate/cb64.c [deleted file]
comedi_calibrate/comedi_calibrate.c [deleted file]
comedi_calibrate/ni.c [deleted file]
comedi_calibrate/ni_labpc.c [deleted file]
comedi_calibrate/ni_m_series.c [deleted file]
comedi_calibrate/other.c [deleted file]
comedi_calibrate/results/DAQCard-6024E [deleted file]
comedi_calibrate/results/DAQCard-6036E [deleted file]
comedi_calibrate/results/DAQCard-6062E [deleted file]
comedi_calibrate/results/DAQCard-ai-16e-4 [deleted file]
comedi_calibrate/results/DAQCard-ai-16xe-50 [deleted file]
comedi_calibrate/results/at-mio-16de-10 [deleted file]
comedi_calibrate/results/at-mio-16e-1 [deleted file]
comedi_calibrate/results/at-mio-16e-10 [deleted file]
comedi_calibrate/results/at-mio-16e-2 [deleted file]
comedi_calibrate/results/at-mio-16xe-50 [deleted file]
comedi_calibrate/results/measurement-computing-pci-das1000 [deleted file]
comedi_calibrate/results/measurement-computing-pci-das1602-16 [deleted file]
comedi_calibrate/results/measurement-computing-pci-das6014 [deleted file]
comedi_calibrate/results/measurement-computing-pci-das6025 [deleted file]
comedi_calibrate/results/measurement-computing-pci-das6034 [deleted file]
comedi_calibrate/results/pci-6014 [deleted file]
comedi_calibrate/results/pci-6023e [deleted file]
comedi_calibrate/results/pci-6024e [deleted file]
comedi_calibrate/results/pci-6025e [deleted file]
comedi_calibrate/results/pci-6031e [deleted file]
comedi_calibrate/results/pci-6032e [deleted file]
comedi_calibrate/results/pci-6033e [deleted file]
comedi_calibrate/results/pci-6034e [deleted file]
comedi_calibrate/results/pci-6035e [deleted file]
comedi_calibrate/results/pci-6036e [deleted file]
comedi_calibrate/results/pci-6052e [deleted file]
comedi_calibrate/results/pci-6071e [deleted file]
comedi_calibrate/results/pci-6110 [deleted file]
comedi_calibrate/results/pci-6711 [deleted file]
comedi_calibrate/results/pci-6713 [deleted file]
comedi_calibrate/results/pci-mio-16e-1 [deleted file]
comedi_calibrate/results/pci-mio-16e-4 [deleted file]
comedi_calibrate/results/pci-mio-16xe-10 [deleted file]
comedi_calibrate/results/pci-mio-16xe-50 [deleted file]
comedi_calibrate/save_cal.c [deleted file]
comedi_calibrate/split_dumps [deleted file]
configure.ac

diff --git a/comedi_calibrate/Makefile.am b/comedi_calibrate/Makefile.am
deleted file mode 100644 (file)
index b9982f9..0000000
+++ /dev/null
@@ -1,15 +0,0 @@
-
-bin_PROGRAMS = comedi_calibrate
-
-noinst_HEADERS = calib.h
-
-comedi_calibrate_SOURCES = \
-       comedi_calibrate.c ni.c cb.c cb64.c other.c save_cal.c cal_common.c ni_labpc.c ni_m_series.c
-comedi_calibrate_CFLAGS = $(COMEDILIB_CFLAGS)
-comedi_calibrate_LDADD = $(COMEDILIB_LIBS)
-
-install-data-local:
-       $(INSTALL) -d $(localstatedir)/lib/comedi/calibrations
-
-EXTRA_DIST = results
-
diff --git a/comedi_calibrate/README b/comedi_calibrate/README
deleted file mode 100644 (file)
index 440dccc..0000000
+++ /dev/null
@@ -1,191 +0,0 @@
-
-I always seem to forget how to convert the calibration
-dump information into code for doing a calibration, so
-I'm writing this mostly for myself.
-
-Boards may have one of 4 calibrations statuses, depending
-on how well the calibration code is trusted.  These are:
-STATUS_UNKNOWN, the default for no information; STATUS_SOME,
-meaning that a dump has been converted to initial code,
-but not tested; STATUS_DONE means that the output of a
-STATUS_SOME dump has been checked, and is correct;
-STATUS_GUESS is a marker that code has been converted
-from a previous version of the code, but not checked.
-
-The NI E series boards have several internal voltages that
-can be measured, and also several calibration DACs that function
-similar to adjustable resistors on old data acquisition boards.
-The information we need is which DACs affect which measurable
-voltages; then we can write calibration code that adjusts those
-DACs until the voltages are within spec.
-
-Usually, there are DACs (or multiple DACs) that are added to
-an analog input signal: 1) before the variable gain amplifier
-("pre-gain"), 2) after the variable gain amplifier ("post-gain"),
-3) between the board's stable voltage reference and the
-reference input to the ADC ("gain offset"), and 4) before a
-unipolar-to-bipolar adjuster ("unipolar offset"), or other
-equivalent circuit.
-
-In addition there are DACs that adjust the output voltages and/or
-reference voltage inputs to a D/A converter.  These are pretty
-intuitive once analog input is understood, and is dependent on
-correct analog input calibration.
-
-The measurable quantities are 0 volts and an internal voltage
-reference near 5 volts, and can be measured at any gain.  The
-interesting combinations are:
-
-  ai, bipolar zero offset, low gain
-  ai, bipolar zero offset, high gain
-  ai, bipolar voltage reference, low gain
-  ai, unipolar zero offset, low gain
-
-The unipolar zero offset may not be available on some boards.
-
-In a STATUS_UNKNOWN dump, for each measurable quantity and each
-calibration DAC, the DAC is varied throughout its entire range
-and the quantity measured.  The data is linearly fit, and if
-the slope is statistically non-zero, a line is printed:
-
-  caldac[0] gain=1.26(11)e-7 V/bit S_min=235.659 dof=254
-
-The information given is caldac index, slope (gain) and slope
-error (in parenthesis, modifying the last two digits of the
-slope), and two statistical parameters S_min and degrees
-of freedom.  S_min and dof will be roughly similar for a
-good fit.  If S_min is more than a factor of 4 greater than
-dof, this is probably not a good fit.  Typically this means
-that the DAC doesn't affect the measureable strictly linearly,
-or there is systematic noise.  The latter seems to common in
-E series boards, so I'm not too worried about the following
-dump where there are S_min/dof ratios above 4.
-
-Here's an example dump, generated by a STATUS_UNKNOWN dump for
-a pci-mio-16xe-10, with the analog output section removed:
-
-  Warning: device not fully calibrated due to insufficient information
-  Please send this output to <ds@schleef.org>
-  Id: comedi_calibrate.c,v 1.21 2001/10/10 22:07:53 ds Exp
-  Driver name: ni_pcimio
-  Device name: pci-mio-16xe-10
-  Comedi version: 0.7.61
-  ai, bipolar zero offset, low gain
-  offset -6.795(14)e-3, target 0
-  caldac[0] gain=1.26(11)e-7 V/bit S_min=235.659 dof=254
-  caldac[2] gain=3.96840(14)e-4 V/bit S_min=1390.18 dof=254
-  caldac[3] gain=4.348(11)e-6 V/bit S_min=258.75 dof=254
-  caldac[8] gain=5.4659(69)e-7 V/bit S_min=386.361 dof=254
-  ai, bipolar zero offset, high gain
-  offset -2.4224(55)e-4, target 0
-  caldac[0] gain=3.61(45)e-9 V/bit S_min=247.26 dof=254
-  caldac[2] gain=3.96644(48)e-6 V/bit S_min=351.927 dof=254
-  caldac[3] gain=4.063(46)e-8 V/bit S_min=272.024 dof=254
-  caldac[8] gain=5.46305(30)e-7 V/bit S_min=314.035 dof=254
-  ai, bipolar voltage reference, low gain
-  offset 4.992959(13), target 5
-  caldac[0] gain=-4.4928(11)e-5 V/bit S_min=1111.4 dof=254
-  caldac[1] gain=-2.792(11)e-6 V/bit S_min=248.971 dof=254
-  caldac[2] gain=3.96488(14)e-4 V/bit S_min=1059.18 dof=254
-  caldac[3] gain=4.318(11)e-6 V/bit S_min=437.441 dof=254
-  caldac[8] gain=5.4810(70)e-7 V/bit S_min=404.213 dof=254
-  ai, unipolar zero offset, low gain
-  offset nan, target 0
-  caldac[2] gain=3.96773(39)e-4 V/bit S_min=158.236 dof=107
-
-[The explanation gets a little fuzzy here]
-
-The resulting function for calibration will look something like:
-
-  void cal_ni_pci_mio_16xe_10(void)
-  {
-       postgain_cal(ni_zero_offset_low, ni_zero_offset_high, XXX);
-       cal1(ni_zero_offset_high, XXX);
-       cal1(ni_reference_low, XXX);
-       cal1(ni_unip_offset_low, XXX);
-  }
-
-You get to fill in the XXX's.  The post-gain calibration DAC will
-be the one for which the ratio of caldac slopes for the low and
-high gain measurables is similar to the ratio of input ranges for
-low and high gain.  This ratio is typically 100 or 200, and really
-should be printed by the program.  Thus, for this dump, we choose
-caldac[2], since the ratio is very nearly 100.  We don't choose
-caldac[0] or caldac[3], because the gains are smaller, and the
-ratio isn't exactly 100 or 200.
-
-Next is the pre-gain calibration.  Adding a voltage before the
-amplifier will affect every input range selection equally, so the
-pre-gain cadac slope will be nearly equal for both bipolar zero
-offset at low and high gain.  In this example, it would be caldac[8].
-
-Next is the voltage reference calibration.  The caldac controlling
-the voltage reference adjustment is proportional to the offset,
-so the correct caldac will typically be the one that has a large
-slope for the bipolar voltage reference measurement, but a small
-slope (by a factor of 2e4, here) for the zero offset measurements.
-It could be any of caldac[0], caldac[1], or caldac[3], or possibly
-all of them.  We'll choose the caldac with the largest slope for
-rough calibration, then use the one with the smallest slope for
-fine calibration, namely caldac[0] and caldac[1].
-
-This is one way that STATUS_SOME is useful, because you can calibrate
-the zero offset, then get a much better idea which other channels
-are likely to be for the voltage reference.
-
-Note that we haven't done anything with caldac[3].  It clearly
-does something useful, but until we attempt a coarse calibration,
-it's not certain what it does.  It turns out to be a fine postgain
-adjustment.
-
-In this example, there doesn't appear to be a caldac that affects
-unipolar zero offset, so it will not be used in the final function:
-
-  void cal_ni_pci_mio_16xe_10(void)
-  {
-       postgain_cal(ni_zero_offset_low, ni_zero_offset_high, 2);
-       cal1(ni_zero_offset_high, 8);
-       cal1(ni_reference_low, 0);
-       cal1(ni_reference_low, 1);
-  }
-
-There are a number of functions that are useful for optimizing a
-given caldac, each optimized for different cases.  The inconsistently
-named postgain_cal() and cal1() measure the observable(s) at a
-number of points throughout the entire caldac range, and then do a
-linear fit to determine the optimum value for caldac.  These functions
-are good if the caldac dependence is strictly linear.  They are also
-useful if the target value for the observable is at the endpoint of
-the measurable range, as when measuring unipolar zero offset, since
-the functions automatically compensate for bad input values.
-
-The function cal_fine() is useful for fine-tuning of the results of
-cal1(), especially if the dependence is close, but not quite linear.
-The goodness of the linear fit is quantified by the S_min value in the
-log -- an S_min value that is approximately the same (within a factor
-of 2 or 3) as dof (degrees of freedom) indicates a good fit.  An S_min
-value that is about 10 times dof indicates that fine tuning is probably
-necessary.  An S_min value that is many orders of magnitude larger than
-dof indicates that linear fitting should not be used.
-
-The functions cal_binary() and cal_postgain_binary() are used when
-the caldac dependence is highly non-linear.  It does a binary search
-in the range of the caldac to find a decent value.
-
-Notes by fmhess******************************************************
-I would use cal_binary() always, as opposed to cal1() or cal1_fine(),
-since it is the best algorithm.
-
-cal_relative_binary() is the same as cal_postgain_binary().  I prefer
-the more general name because the function is useful for more than
-just postgain offsets.  It adjusts a caldac so the difference between
-two observables is correct (although their absolute values may still
-be offset), which works for postgain offsets, but
-is also good for gain calibrations when the gain adjustment
-couples with the offset.
-
-cal_linearity_binary() was added for convenient calibration of
-analog output linearity on NI boards.  It should be fed 3
-observables that are well separated from each other.  It adjusts
-a caldac so that the ratio (obs3 - obs2)/(obs2 - obs1) is
-correct.
diff --git a/comedi_calibrate/cal_common.c b/comedi_calibrate/cal_common.c
deleted file mode 100644 (file)
index 5729396..0000000
+++ /dev/null
@@ -1,490 +0,0 @@
-/***************************************************************************
-       cal_common.c  -  shared calibration routines
-                             -------------------
-
-    begin                : Fri May 2, 2003
-    copyright            : (C) 2003 by Frank Mori Hess
-    email                : fmhess@users.sourceforge.net
-
- ***************************************************************************/
-
-/***************************************************************************
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU Lesser General Public License as        *
- *   published by                                                          *
- *   the Free Software Foundation; either version 2.1 of the License, or   *
- *   (at your option) any later version.                                   *
- *                                                                         *
- ***************************************************************************/
-#define _GNU_SOURCE
-
-#include "calib.h"
-#include <assert.h>
-#include <stdlib.h>
-#include <math.h>
-
-void generic_do_cal( calibration_setup_t *setup,
-       comedi_calibration_setting_t *saved_cal, int observable, int caldac )
-{
-       if( caldac < 0 || observable < 0 ) return;
-
-       cal_binary( setup, observable, caldac );
-       sc_push_caldac( saved_cal, setup->caldacs[ caldac ] );
-}
-
-void generic_do_relative( calibration_setup_t *setup,
-       comedi_calibration_setting_t *saved_cal, int observable1, int observable2, int caldac )
-{
-       if( caldac < 0 || observable1 < 0 || observable2 < 0 ) return;
-
-       cal_relative_binary( setup, observable1, observable2, caldac );
-       sc_push_caldac( saved_cal, setup->caldacs[ caldac ] );
-}
-
-void generic_do_linearity( calibration_setup_t *setup,
-       comedi_calibration_setting_t *saved_cal, int observable1, int observable2,
-       int observable3, int caldac )
-{
-       if( caldac < 0 || observable1 < 0 || observable2 < 0 || observable3 < 0 )
-               return;
-
-       cal_linearity_binary( setup, observable1, observable2, observable3, caldac );
-       sc_push_caldac( saved_cal, setup->caldacs[ caldac ] );
-}
-
-void generic_peg( calibration_setup_t *setup, int observable, int caldac,
-       int maximize )
-{
-       if( caldac < 0 || observable < 0 ) return;
-       peg_binary( setup, observable, caldac, maximize );
-}
-
-void generic_prep_adc_caldacs( calibration_setup_t *setup,
-       const generic_layout_t *layout, unsigned int channel, unsigned int range )
-{
-       int retval;
-
-       if( setup->ad_subdev < 0 ) return;
-
-       if( setup->old_calibration == NULL )
-       {
-               reset_caldac( setup, layout->adc_offset( channel ) );
-               reset_caldac( setup, layout->adc_gain( channel ) );
-               reset_caldac( setup, layout->adc_offset_fine( channel ) );
-               reset_caldac( setup, layout->adc_gain_fine( channel ) );
-               reset_caldac( setup, layout->adc_postgain_offset( channel ) );
-       }else
-       {
-               retval = comedi_apply_parsed_calibration( setup->dev, setup->ad_subdev,
-                       channel, range, AREF_GROUND, setup->old_calibration );
-               if( retval < 0 )
-               {
-                       DPRINT( 0, "Failed to apply existing calibration, reseting dac caldacs.\n" );
-                       reset_caldac( setup, layout->adc_offset( channel ) );
-                       reset_caldac( setup, layout->adc_gain( channel ) );
-                       reset_caldac( setup, layout->adc_offset_fine( channel ) );
-                       reset_caldac( setup, layout->adc_gain_fine( channel ) );
-                       reset_caldac( setup, layout->adc_postgain_offset( channel ) );
-               }
-       }
-}
-
-void generic_prep_dac_caldacs( calibration_setup_t *setup,
-       const generic_layout_t *layout, unsigned int channel, unsigned int range )
-{
-       int retval;
-
-       if( setup->da_subdev < 0 ) return;
-
-       if( setup->old_calibration == NULL )
-       {
-               reset_caldac( setup, layout->dac_offset( channel ) );
-               reset_caldac( setup, layout->dac_gain( channel ) );
-               reset_caldac( setup, layout->dac_linearity( channel ) );
-               reset_caldac( setup, layout->dac_offset_fine( channel ) );
-               reset_caldac( setup, layout->dac_gain_fine( channel ) );
-               reset_caldac( setup, layout->dac_linearity_fine( channel ) );
-       }else
-       {
-               retval = comedi_apply_parsed_calibration( setup->dev, setup->da_subdev,
-                       channel, range, AREF_GROUND, setup->old_calibration );
-               if( retval < 0 )
-               {
-                       DPRINT( 0, "Failed to apply existing calibration, reseting dac caldacs.\n" );
-                       reset_caldac( setup, layout->dac_offset( channel ) );
-                       reset_caldac( setup, layout->dac_gain( channel ) );
-                       reset_caldac( setup, layout->dac_linearity( channel ) );
-                       reset_caldac( setup, layout->dac_offset_fine( channel ) );
-                       reset_caldac( setup, layout->dac_gain_fine( channel ) );
-                       reset_caldac( setup, layout->dac_linearity_fine( channel ) );
-               }
-       }
-}
-
-static void generic_prep_adc_for_dac( calibration_setup_t *setup,
-       comedi_calibration_t *calibration, int observable )
-{
-       unsigned int adc_channel, adc_range;
-       int chanspec;
-
-       if( observable < 0 ) return;
-
-       chanspec = setup->observables[ observable ].observe_insn.chanspec;
-       adc_channel = CR_CHAN( chanspec );
-       adc_range = CR_RANGE( chanspec );
-
-       comedi_apply_parsed_calibration( setup->dev, setup->ad_subdev,
-               adc_channel, adc_range, 0, calibration );
-}
-
-static int dac_cal_is_good( calibration_setup_t *setup, const generic_layout_t *layout,
-       unsigned int channel, unsigned int range )
-{
-       if( fabs( fractional_offset( setup, setup->da_subdev, channel, range,
-               layout->dac_ground_observable( setup, channel, range ) ) ) > layout->dac_fractional_tolerance )
-               return 0;
-       else if( fabs( fractional_offset( setup, setup->da_subdev, channel, range,
-               layout->dac_high_observable( setup, channel, range ) ) ) > layout->dac_fractional_tolerance )
-               return 0;
-
-       return 1;
-}
-
-static void generic_do_dac_channel( calibration_setup_t *setup, const generic_layout_t *layout ,
-       comedi_calibration_t *calibration, comedi_calibration_setting_t *current_cal,
-       unsigned int channel, unsigned int range )
-{
-       static const int max_iterations = 4;
-       int i;
-
-       current_cal->subdevice = setup->da_subdev;
-
-       generic_prep_adc_for_dac( setup, calibration,
-               layout->dac_ground_observable( setup, channel, range ) );
-
-       for( i = 0; i < max_iterations; i++ )
-       {
-               generic_do_linearity(setup, current_cal, layout->dac_ground_observable( setup, channel, range ),
-                       layout->dac_mid_observable( setup, channel, range ),
-                       layout->dac_high_observable( setup, channel, range ),
-                       layout->dac_linearity(channel));
-               generic_do_relative( setup, current_cal, layout->dac_high_observable( setup, channel, range ),
-                       layout->dac_ground_observable( setup, channel, range ),layout->dac_gain( channel ) );
-               generic_do_cal( setup, current_cal, layout->dac_ground_observable( setup, channel, range ),
-                       layout->dac_offset( channel ) );
-
-               generic_do_linearity(setup, current_cal, layout->dac_ground_observable( setup, channel, range ),
-                       layout->dac_mid_observable( setup, channel, range ),
-                       layout->dac_high_observable( setup, channel, range ),
-                       layout->dac_linearity_fine(channel));
-               generic_do_relative( setup, current_cal, layout->dac_high_observable( setup, channel, range ),
-                       layout->dac_ground_observable( setup, channel, range ), layout->dac_gain_fine( channel ) );
-               generic_do_cal( setup, current_cal, layout->dac_ground_observable( setup, channel, range ),
-                       layout->dac_offset_fine( channel ) );
-               if( dac_cal_is_good( setup, layout, channel, range ) ) break;
-       }
-       if( i == max_iterations )
-               DPRINT(0, "WARNING: unable to calibrate dac channel %i, range %i to desired %g tolerance\n",
-                       channel, range, layout->dac_fractional_tolerance );
-       sc_push_channel( current_cal, channel );
-       sc_push_range( current_cal, range );
-       sc_push_aref( current_cal, SC_ALL_AREFS );
-}
-
-static int adc_cal_is_good( calibration_setup_t *setup, const generic_layout_t *layout,
-       unsigned int channel, unsigned int range )
-{
-       if( fabs( fractional_offset( setup, setup->ad_subdev, channel, range,
-               layout->adc_ground_observable( setup, channel, range ) ) ) > layout->adc_fractional_tolerance )
-               return 0;
-       else if( fabs( fractional_offset( setup, setup->ad_subdev, channel, range,
-               layout->adc_high_observable( setup, channel, range ) ) ) > layout->adc_fractional_tolerance )
-               return 0;
-
-       return 1;
-}
-
-static void generic_do_adc_channel( calibration_setup_t *setup, const generic_layout_t *layout,
-       comedi_calibration_setting_t *current_cal, unsigned int channel, unsigned int range )
-{
-       static const int max_iterations = 4;
-       int i;
-
-       current_cal->subdevice = setup->ad_subdev;
-
-       for( i = 0; i < max_iterations; i++ )
-       {
-               generic_do_relative( setup, current_cal, layout->adc_high_observable( setup, channel, range ),
-                       layout->adc_ground_observable( setup, channel, range ), layout->adc_gain( channel ) );
-               generic_do_cal( setup, current_cal, layout->adc_ground_observable( setup, channel, range ),
-                       layout->adc_offset( channel ) );
-               generic_do_relative( setup, current_cal, layout->adc_high_observable( setup, channel, range ),
-                       layout->adc_ground_observable( setup, channel, range ), layout->adc_gain_fine( channel ) );
-               generic_do_cal( setup, current_cal, layout->adc_ground_observable( setup, channel, range ),
-                       layout->adc_offset_fine( channel ) );
-               if( adc_cal_is_good( setup, layout, channel, range ) ) break;
-       }
-       if( i == max_iterations )
-               DPRINT(0, "WARNING: unable to calibrate adc channel %i, range %i to desired %g tolerance\n",
-                       channel, range, layout->adc_fractional_tolerance );
-       sc_push_channel( current_cal, channel );
-       sc_push_range( current_cal, range );
-       sc_push_aref( current_cal, SC_ALL_AREFS );
-}
-
-static void generic_do_adc_postgain_offset( calibration_setup_t *setup, const generic_layout_t *layout,
-       comedi_calibration_setting_t *current_cal, unsigned int channel, int unipolar )
-{
-       int lowgain, highgain;
-       int bip_lowgain;
-
-       current_cal->subdevice = setup->ad_subdev;
-
-       bip_lowgain = get_bipolar_lowgain( setup->dev, setup->ad_subdev );
-       if( unipolar )
-       {
-               lowgain = get_unipolar_lowgain( setup->dev, setup->ad_subdev );
-               highgain = get_unipolar_highgain( setup->dev, setup->ad_subdev );
-       }else
-       {
-               lowgain = bip_lowgain;
-               highgain = get_bipolar_highgain( setup->dev, setup->ad_subdev );
-       }
-       generic_prep_adc_caldacs( setup, layout, channel, highgain );
-       if( unipolar )
-       {
-               /* Need to make sure we aren't stuck on zero for unipolar,
-                * by setting pregain offset to maximum.  Use bipolar lowgain
-                * for pegs to make sure we aren't out-of-range. */
-               generic_peg( setup, layout->adc_ground_observable( setup, channel, bip_lowgain ),
-                       layout->adc_offset( channel ), 1 );
-               generic_peg( setup, layout->adc_ground_observable( setup, channel, bip_lowgain ),
-                       layout->adc_offset_fine( channel ), 1 );
-       }
-       generic_do_relative( setup, current_cal, layout->adc_ground_observable( setup, channel, lowgain ),
-               layout->adc_ground_observable( setup, channel, highgain ), layout->adc_postgain_offset( channel ) );
-
-       sc_push_channel( current_cal, channel );
-       sc_push_aref( current_cal, SC_ALL_AREFS );
-}
-
-int generic_cal_by_channel_and_range( calibration_setup_t *setup,
-       const generic_layout_t *layout  )
-{
-       int range, channel, num_ai_ranges, num_ai_channels, num_ao_ranges,
-               num_ao_channels, retval, num_ai_calibrations;
-       comedi_calibration_setting_t *current_cal;
-
-       assert( comedi_range_is_chan_specific( setup->dev, setup->ad_subdev ) == 0 );
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       if( num_ai_ranges < 0 ) return -1;
-
-       num_ai_channels = comedi_get_n_channels( setup->dev, setup->ad_subdev );
-       if( num_ai_channels < 0 ) return -1;
-
-       if(setup->da_subdev >= 0 && setup->do_output )
-       {
-               assert( comedi_range_is_chan_specific( setup->dev, setup->da_subdev ) == 0 );
-
-               num_ao_ranges = comedi_get_n_ranges( setup->dev, setup->da_subdev, 0 );
-               if( num_ao_ranges < 0 ) return -1;
-
-               num_ao_channels = comedi_get_n_channels( setup->dev, setup->da_subdev );
-               if( num_ao_channels < 0 ) return -1;
-       }else
-               num_ao_ranges = num_ao_channels = 0;
-
-       num_ai_calibrations = num_ai_ranges * num_ai_channels;
-
-       for( channel = 0; channel < num_ai_channels; channel++ )
-       {
-               int postgain_bip, postgain_unip;
-
-               if( layout->adc_postgain_offset( 0 ) >= 0 )
-               {
-                       /* bipolar postgain */
-                       current_cal = sc_alloc_calibration_setting( setup );
-                       generic_do_adc_postgain_offset( setup, layout, current_cal, channel, 0 );
-                       for( range = 0; range < num_ai_ranges; range++ )
-                               if( is_bipolar( setup->dev, setup->ad_subdev, channel, range ) )
-                                       sc_push_range( current_cal, range );
-                       postgain_bip = setup->caldacs[ layout->adc_postgain_offset( channel ) ].current;
-                       /* unipolar postgain */
-                       if( layout->do_adc_unipolar_postgain )
-                       {
-                               current_cal = sc_alloc_calibration_setting( setup );
-                               generic_do_adc_postgain_offset( setup, layout, current_cal, channel, 1 );
-                       }
-                       for( range = 0; range < num_ai_ranges; range++ )
-                               if( is_unipolar( setup->dev, setup->ad_subdev, channel, range ) )
-                                       sc_push_range( current_cal, range );
-                       postgain_unip = setup->caldacs[ layout->adc_postgain_offset( channel ) ].current;
-               }else
-                       postgain_bip = postgain_unip = -1;
-
-               for( range = 0; range < num_ai_ranges; range++ )
-               {
-                       current_cal = sc_alloc_calibration_setting( setup );
-                       generic_prep_adc_caldacs( setup, layout, channel, range );
-                       if( is_unipolar( setup->dev, setup->ad_subdev, channel, range ) )
-                               update_caldac( setup, layout->adc_postgain_offset( channel ), postgain_unip );
-                       else
-                               update_caldac( setup, layout->adc_postgain_offset( channel ), postgain_bip );
-                       generic_do_adc_channel( setup, layout, current_cal, channel, range );
-               }
-       }
-       for( channel = 0; channel < num_ao_channels; channel++ )
-       {
-               for( range = 0; range < num_ao_ranges; range++ )
-               {
-                       current_cal = sc_alloc_calibration_setting( setup );
-                       generic_prep_dac_caldacs( setup, layout, channel, range );
-                       generic_do_dac_channel( setup, layout, setup->new_calibration,
-                               current_cal, channel, range );
-               }
-       }
-
-       retval = write_calibration_file( setup );
-       return retval;
-}
-
-int generic_cal_by_range( calibration_setup_t *setup,
-       const generic_layout_t *layout  )
-{
-       int channel, range, num_ai_ranges, num_ao_ranges,
-               num_ao_channels, retval;
-       comedi_calibration_setting_t *current_cal;
-       int postgain_bip, postgain_unip;
-
-       assert( comedi_range_is_chan_specific( setup->dev, setup->ad_subdev ) == 0 );
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       if( num_ai_ranges < 0 ) return -1;
-
-       if(setup->da_subdev >= 0 && setup->do_output )
-       {
-               assert( comedi_range_is_chan_specific( setup->dev, setup->da_subdev ) == 0 );
-
-               num_ao_ranges = comedi_get_n_ranges( setup->dev, setup->da_subdev, 0 );
-               if( num_ao_ranges < 0 ) return -1;
-
-               num_ao_channels = comedi_get_n_channels( setup->dev, setup->da_subdev );
-               if( num_ao_channels < 0 ) return -1;
-       }else
-               num_ao_ranges = num_ao_channels = 0;
-
-       if( layout->adc_postgain_offset( 0 ) >= 0 )
-       {
-               /* bipolar postgain */
-               current_cal = sc_alloc_calibration_setting( setup );
-               generic_do_adc_postgain_offset( setup, layout, current_cal, 0, 0 );
-               sc_push_channel( current_cal, SC_ALL_CHANNELS );
-               for( range = 0; range < num_ai_ranges; range++ )
-                       if( is_bipolar( setup->dev, setup->ad_subdev, 0, range ) )
-                               sc_push_range( current_cal, range );
-               postgain_bip = setup->caldacs[ layout->adc_postgain_offset( 0 ) ].current;
-               /* unipolar postgain */
-               if( layout->do_adc_unipolar_postgain )
-               {
-                       current_cal = sc_alloc_calibration_setting( setup );
-                       generic_do_adc_postgain_offset( setup, layout, current_cal, 0, 1 );
-                       sc_push_channel( current_cal, SC_ALL_CHANNELS );
-               }
-               for( range = 0; range < num_ai_ranges; range++ )
-                       if( is_unipolar( setup->dev, setup->ad_subdev, 0, range ) )
-                               sc_push_range( current_cal, range );
-               postgain_unip = setup->caldacs[ layout->adc_postgain_offset( 0 ) ].current;
-       }else
-               postgain_bip = postgain_unip = -1;
-
-       for( range = 0; range < num_ai_ranges; range++ )
-       {
-               current_cal = sc_alloc_calibration_setting( setup );
-               generic_prep_adc_caldacs( setup, layout, 0, range );
-               if( is_unipolar( setup->dev, setup->ad_subdev, 0, range ) )
-                       update_caldac( setup, layout->adc_postgain_offset( 0 ), postgain_unip );
-               else
-                       update_caldac( setup, layout->adc_postgain_offset( 0 ), postgain_bip );
-               generic_do_adc_channel( setup, layout, current_cal, 0, range );
-               sc_push_channel( current_cal, SC_ALL_CHANNELS );
-       }
-       for( channel = 0; channel < num_ao_channels; channel++ )
-       {
-               for( range = 0; range < num_ao_ranges; range++ )
-               {
-                       current_cal = sc_alloc_calibration_setting( setup );
-                       generic_prep_dac_caldacs( setup, layout, channel, range );
-                       generic_do_dac_channel( setup, layout, setup->new_calibration,
-                               current_cal, channel, range );
-               }
-       }
-       retval = write_calibration_file( setup );
-       return retval;
-}
-
-int generic_cal_ao(calibration_setup_t *setup,
-       const generic_layout_t *layout  )
-{
-       int channel, range, num_ao_ranges,
-               num_ao_channels, retval;
-       comedi_calibration_setting_t *current_cal;
-
-
-       if(setup->da_subdev >= 0 && setup->do_output)
-       {
-               assert( comedi_range_is_chan_specific( setup->dev, setup->da_subdev ) == 0 );
-
-               num_ao_ranges = comedi_get_n_ranges( setup->dev, setup->da_subdev, 0 );
-               if( num_ao_ranges < 0 ) return -1;
-
-               num_ao_channels = comedi_get_n_channels( setup->dev, setup->da_subdev );
-               if( num_ao_channels < 0 ) return -1;
-       }else
-               num_ao_ranges = num_ao_channels = 0;
-       for( channel = 0; channel < num_ao_channels; channel++ )
-       {
-               for( range = 0; range < num_ao_ranges; range++ )
-               {
-                       current_cal = sc_alloc_calibration_setting( setup );
-                       generic_prep_dac_caldacs( setup, layout, channel, range );
-                       generic_do_dac_channel( setup, layout, setup->new_calibration,
-                               current_cal, channel, range );
-               }
-       }
-       retval = write_calibration_file( setup );
-       return retval;
-}
-
-static int dummy_caldac( unsigned int channel )
-{
-       return -1;
-}
-static int dummy_observable( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range )
-{
-       return -1;
-}
-void init_generic_layout( generic_layout_t *layout )
-{
-       layout->adc_offset = dummy_caldac;
-       layout->adc_offset_fine = dummy_caldac;
-       layout->adc_gain = dummy_caldac;
-       layout->adc_gain_fine = dummy_caldac;
-       layout->adc_postgain_offset = dummy_caldac;
-       layout->dac_offset = dummy_caldac;
-       layout->dac_offset_fine = dummy_caldac;
-       layout->dac_linearity = dummy_caldac;
-       layout->dac_linearity_fine = dummy_caldac;
-       layout->dac_gain = dummy_caldac;
-       layout->dac_gain_fine = dummy_caldac;
-       layout->adc_high_observable = dummy_observable;
-       layout->adc_ground_observable = dummy_observable;
-       layout->dac_high_observable = dummy_observable;
-       layout->dac_mid_observable = dummy_observable;
-       layout->dac_ground_observable = dummy_observable;
-       layout->adc_fractional_tolerance = INFINITY;
-       layout->adc_fractional_tolerance = INFINITY;
-       layout->do_adc_unipolar_postgain = 0;
-}
diff --git a/comedi_calibrate/calib.h b/comedi_calibrate/calib.h
deleted file mode 100644 (file)
index b1b7ada..0000000
+++ /dev/null
@@ -1,289 +0,0 @@
-/***************************************************************************
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU Lesser General Public License as        *
- *   published by                                                          *
- *   the Free Software Foundation; either version 2.1 of the License, or   *
- *   (at your option) any later version.                                   *
- *                                                                         *
- ***************************************************************************/
-
-#ifndef __CALIB_H_
-#define __CALIB_H_
-
-#include "comedilib.h"
-#if 0
-#include <stdio.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <errno.h>
-#include <getopt.h>
-#include <ctype.h>
-#include <math.h>
-#include <stdlib.h>
-#include <string.h>
-#endif
-
-#define DPRINT(level,fmt,args...) do{if(verbose>=level)printf(fmt, ## args);}while(0)
-
-#define N_CALDACS 64
-#define N_OBSERVABLES 128
-#define PREOBSERVE_DATA_LEN 10
-
-static const int caldac_settle_usec = 100000;
-
-typedef struct{
-       int subdev;
-       int chan;
-
-       int maxdata;
-       int current;
-
-//     int type;
-//     double gain;
-}caldac_t;
-
-typedef struct{
-       char *name;
-
-       comedi_insn preobserve_insn;
-       lsampl_t preobserve_data[ PREOBSERVE_DATA_LEN ];
-
-       comedi_insn observe_insn;
-
-       int reference_source;
-       double target;
-}observable;
-
-typedef struct calibration_setup_struct calibration_setup_t;
-struct calibration_setup_struct {
-       comedi_t *dev;
-       int ad_subdev;
-       int da_subdev;
-       int eeprom_subdev;
-       int caldac_subdev;
-       int status;
-       unsigned int sv_settling_time_ns;
-       unsigned int sv_order;
-       observable observables[ N_OBSERVABLES ];
-       unsigned int n_observables;
-       caldac_t caldacs[ N_CALDACS ];
-       unsigned int n_caldacs;
-       int (*do_cal) ( calibration_setup_t *setup );
-       char *cal_save_file_path;
-       unsigned do_output : 1;
-       comedi_calibration_t *old_calibration;
-       comedi_calibration_t *new_calibration;
-       void *private_data;
-};
-
-extern int verbose;
-
-enum {
-       STATUS_UNKNOWN = 0,
-       STATUS_GUESS,
-       STATUS_SOME,
-       STATUS_DONE
-};
-
-/* high level */
-
-void observe( calibration_setup_t *setup );
-int preobserve( calibration_setup_t *setup, int obs);
-void observable_dependence( calibration_setup_t *setup, int obs);
-void measure_observable( calibration_setup_t *setup, int obs);
-void reset_caldac( calibration_setup_t *setup, int caldac_index );
-void reset_caldacs( calibration_setup_t *setup);
-
-/* drivers */
-
-extern char ni_id[];
-extern char cb_id[];
-extern char cb64_id[];
-extern char ni_labpc_id[];
-extern char ni_m_series_id[];
-
-int ni_setup( calibration_setup_t*, const char *device_name );
-int cb_setup( calibration_setup_t*, const char *device_name );
-int cb64_setup( calibration_setup_t*, const char *device_name );
-int ni_labpc_setup( calibration_setup_t*, const char *device_name );
-int ni_m_series_setup(calibration_setup_t*, const char *device_name);
-
-/* low level */
-
-void set_target( calibration_setup_t *setup, int obs,double target);
-void update_caldac( calibration_setup_t *setup, int caldac_index, int value );
-void setup_caldacs( calibration_setup_t *setup, int caldac_subdev);
-void postgain_cal( calibration_setup_t *setup, int obs1, int obs2, int dac);
-void cal1( calibration_setup_t *setup, int obs, int dac);
-void cal1_fine( calibration_setup_t *setup, int obs, int dac);
-void cal_binary( calibration_setup_t *setup, int obs, int dac);
-void cal_postgain_binary( calibration_setup_t *setup, int obs1, int obs2, int dac);
-void cal_relative_binary( calibration_setup_t *setup, int obs1, int obs2, int dac);
-void cal_linearity_binary( calibration_setup_t *setup, int obs1, int obs2, int obs3, int dac);
-void peg_binary( calibration_setup_t *setup, int obs, int dac, int maximize );
-
-/* misc and temp */
-
-void channel_dependence(int adc,int range);
-void caldac_dependence(int caldac);
-void chan_cal(int adc,int caldac,int range,double target);
-int read_eeprom( calibration_setup_t *setup, int addr);
-
-double read_chan( calibration_setup_t *setup, int adc,int range);
-int read_chan2( calibration_setup_t *setup, char *s,int adc,int range);
-void set_ao(comedi_t *dev,int subdev,int chan,int range,double value);
-void check_gain(int ad_chan,int range);
-double check_gain_chan(int ad_chan,int range,int cdac);
-
-int cb_actual_source_voltage( comedi_t *dev, unsigned int subdevice,
-       unsigned int eeprom_channel, float *voltage);
-
-/* helper functions */
-
-int get_bipolar_lowgain(comedi_t *dev,int subdev);
-int get_bipolar_highgain(comedi_t *dev,int subdev);
-int get_unipolar_lowgain(comedi_t *dev,int subdev);
-int get_unipolar_highgain(comedi_t *dev,int subdev);
-double very_low_target( comedi_t *dev, unsigned int subdevice,
-       unsigned int channel, unsigned int range );
-int is_bipolar( comedi_t *dev, unsigned int subdevice,
-       unsigned int channel, unsigned int range );
-int is_unipolar( comedi_t *dev, unsigned int subdevice,
-       unsigned int channel, unsigned int range );
-
-double fractional_offset( calibration_setup_t *setup, int subdevice,
-       unsigned int channel, unsigned int range, int obs );
-double get_tolerance( calibration_setup_t *setup, int subdevice,
-       double num_bits );
-
-/* other */
-
-void comedi_nanodelay(comedi_t *dev, unsigned int delay);
-
-/* printing scientific numbers */
-
-int sci_sprint(char *s,double x,double y);
-int sci_sprint_alt(char *s,double x,double y);
-
-/* linear fitting */
-
-typedef struct {
-       int n;
-
-       double *y_data;
-       double *yerr_data;
-       double *x_data;
-
-       double x0;
-       double dx;
-       double yerr;
-
-       /* stats */
-       double s1,sx,sy,sxy,sxx;
-
-       double min,max;
-
-       /* results */
-       double ave_x;
-       double ave_y;
-       double slope;
-       double err_slope;
-       double err_ave_y;
-       double S_min;
-       double dof;
-
-}linear_fit_t;
-int linear_fit_monotonic(linear_fit_t *l);
-double linear_fit_func_y(linear_fit_t *l,double x);
-double linear_fit_func_x(linear_fit_t *l,double y);
-double check_gain_chan_x( calibration_setup_t *setup, linear_fit_t *l,unsigned int ad_chanspec,int cdac);
-double check_gain_chan_fine( calibration_setup_t *setup, linear_fit_t *l,unsigned int ad_chanspec,int cdac);
-void dump_curve(linear_fit_t *l);
-
-/* slowly varying measurements */
-
-typedef struct{
-       comedi_t *dev;
-
-       int maxdata;
-       int order;
-       int subd;
-       unsigned int chanspec;
-       unsigned int settling_time_ns;
-
-       comedi_range *rng;
-
-       double average;
-       double stddev;
-       double error;
-}new_sv_t;
-
-int new_sv_measure(comedi_t *dev, new_sv_t *sv);
-int new_sv_init(new_sv_t *sv,comedi_t *dev,int subdev,unsigned int chanspec);
-int my_sv_init( new_sv_t *sv, const calibration_setup_t *setup, int subdev,
-       unsigned int chanspec );
-
-/* saving calibrations to file */
-static const int SC_ALL_CHANNELS = -1;
-static const int SC_ALL_RANGES = -1;
-static const int SC_ALL_AREFS = -1;
-
-int write_calibration_file( calibration_setup_t *setup );
-comedi_calibration_setting_t* sc_alloc_calibration_setting( calibration_setup_t *setup );
-void sc_push_caldac( comedi_calibration_setting_t *saved_cal, caldac_t caldac );
-void sc_push_channel( comedi_calibration_setting_t *saved_cal, int channel );
-void sc_push_range( comedi_calibration_setting_t *saved_cal, int range );
-void sc_push_aref( comedi_calibration_setting_t *saved_cal, int aref );
-
-/* generic calibration support */
-typedef struct
-{
-       int (*adc_offset)( unsigned int channel );
-       int (*adc_offset_fine)( unsigned int channel );
-       int (*adc_postgain_offset)( unsigned int channel );
-       int (*adc_gain)( unsigned int channel );
-       int (*adc_gain_fine)( unsigned int channel );
-       int (*dac_linearity)( unsigned int channel );
-       int (*dac_linearity_fine)( unsigned int channel );
-       int (*dac_offset)( unsigned int channel );
-       int (*dac_offset_fine)( unsigned int channel );
-       int (*dac_gain)( unsigned int channel );
-       int (*dac_gain_fine)( unsigned int channel );
-       int (*adc_high_observable)( const calibration_setup_t *setup,
-               unsigned int channel, unsigned int range );
-       int (*adc_ground_observable)( const calibration_setup_t *setup,
-               unsigned int channel, unsigned int range );
-       int (*dac_high_observable)( const calibration_setup_t *setup,
-               unsigned int channel, unsigned int range );
-       int (*dac_mid_observable)( const calibration_setup_t *setup,
-               unsigned int channel, unsigned int range );
-       int (*dac_ground_observable)( const calibration_setup_t *setup,
-               unsigned int channel, unsigned int range );
-       double adc_fractional_tolerance;
-       double dac_fractional_tolerance;
-       unsigned do_adc_unipolar_postgain : 1;
-} generic_layout_t;
-void init_generic_layout( generic_layout_t *layout );
-int generic_cal_by_channel_and_range( calibration_setup_t *setup,
-       const generic_layout_t *layout  );
-int generic_cal_by_range( calibration_setup_t *setup,
-       const generic_layout_t *layout  );
-int generic_cal_ao(calibration_setup_t *setup,
-       const generic_layout_t *layout  );
-void generic_do_cal( calibration_setup_t *setup,
-       comedi_calibration_setting_t *saved_cal, int observable, int caldac );
-void generic_do_relative( calibration_setup_t *setup,
-       comedi_calibration_setting_t *saved_cal, int observable1, int observable2, int caldac );
-void generic_do_linearity( calibration_setup_t *setup,
-       comedi_calibration_setting_t *saved_cal, int observable1, int observable2,
-       int observable3, int caldac );
-void generic_prep_adc_caldacs( calibration_setup_t *setup,
-       const generic_layout_t *layout, unsigned int channel, unsigned int range );
-void generic_prep_dac_caldacs( calibration_setup_t *setup,
-       const generic_layout_t *layout, unsigned int channel, unsigned int range );
-void generic_peg( calibration_setup_t *setup, int observable, int caldac,
-       int maximize );
-
-#endif
-
diff --git a/comedi_calibrate/cb.c b/comedi_calibrate/cb.c
deleted file mode 100644 (file)
index edb976b..0000000
+++ /dev/null
@@ -1,586 +0,0 @@
-/***************************************************************************
-       cb.c  -  calibration support for some Measurement computing boards.
-                           -------------------
-
-    begin                : Sat Apr 27 2002
-    copyright            : (C) 2002,2003 by Frank Mori Hess
-    email                : fmhess@users.sourceforge.net
-
- ***************************************************************************/
-
-/***************************************************************************
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU Lesser General Public License as        *
- *   published by                                                          *
- *   the Free Software Foundation; either version 2.1 of the License, or   *
- *   (at your option) any later version.                                   *
- *                                                                         *
- ***************************************************************************/
-
-#define _GNU_SOURCE
-
-#include <stdio.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <errno.h>
-#include <getopt.h>
-#include <ctype.h>
-#include <math.h>
-#include <stdlib.h>
-#include <string.h>
-#include <stdint.h>
-#include <assert.h>
-
-#include "calib.h"
-
-
-char cb_id[] = "$Id$";
-
-struct board_struct{
-       char *name;
-       int status;
-       int (*setup)( calibration_setup_t *setup );
-};
-
-static int setup_cb_pci_1xxx( calibration_setup_t *setup );
-static int setup_cb_pci_1602_16( calibration_setup_t *setup );
-
-static int cal_cb_pci_1xxx( calibration_setup_t *setup );
-static int cal_cb_pci_1602_16( calibration_setup_t *setup );
-
-static int init_observables_1xxx( calibration_setup_t *setup );
-
-static struct board_struct boards[]={
-       { "pci-das1000",        STATUS_DONE,    setup_cb_pci_1xxx },
-       { "pci-das1001",        STATUS_GUESS,   setup_cb_pci_1xxx },
-       { "pci-das1002",        STATUS_GUESS,   setup_cb_pci_1xxx },
-       { "pci-das1200",        STATUS_DONE,    setup_cb_pci_1xxx },
-       { "pci-das1200/jr",     STATUS_GUESS,   setup_cb_pci_1xxx },
-       { "pci-das1602/12",     STATUS_GUESS,   setup_cb_pci_1xxx },
-       { "pci-das1602/16",     STATUS_DONE,    setup_cb_pci_1602_16 },
-       { "pci-das1602/16/jr",  STATUS_GUESS,   setup_cb_pci_1602_16 },
-};
-
-static const int num_boards = ( sizeof(boards) / sizeof(boards[0]) );
-
-enum calibration_source_1xxx
-{
-       CS_1XXX_GROUND = 0,
-       CS_1XXX_7V = 1,
-       CS_1002_3500mV = 2,
-       CS_1002_1750mV = 3,
-       CS_1001_88600uV = 3,
-       CS_1XXX_875mV = 4,
-       CS_1XXX_8600uV = 5,
-       CS_1602_16_minus_10V = 5,
-       CS_1XXX_DAC0 = 6,
-       CS_1XXX_DAC1 = 7,
-};
-static inline int CS_1XXX_DAC( unsigned int channel )
-{
-       if( channel )
-               return CS_1XXX_DAC1;
-       else
-               return CS_1XXX_DAC0;
-}
-
-int cb_setup( calibration_setup_t *setup, const char *device_name )
-{
-       unsigned int i;
-
-       for( i = 0; i < num_boards; i++ )
-       {
-               if( !strcmp( device_name, boards[i].name ) )
-               {
-                       setup->status = boards[i].status;
-                       return boards[i].setup( setup );
-                       break;
-               }
-       }
-       if( i == num_boards ) return -1;
-
-       return 0;
-}
-
-static int setup_cb_pci_1xxx( calibration_setup_t *setup )
-{
-       int retval;
-       static const int caldac_subdev = 4;
-       static const int calpot_subdev = 5;
-
-       if( comedi_get_version_code( setup->dev ) <= COMEDI_VERSION_CODE( 0, 7, 66 ) )
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.67 or later\n"
-                "for this calibration to work properly\n" );
-       }
-       //this larger delay is definitely needed by pci-das1000, possibly not for pci-das1200
-       setup->sv_settling_time_ns = 10000000;
-       retval = init_observables_1xxx( setup );
-       if( retval < 0 ) return retval;
-       setup_caldacs( setup, caldac_subdev );
-       setup_caldacs( setup, calpot_subdev );
-       setup->do_cal = cal_cb_pci_1xxx;
-       return 0;
-}
-
-static int setup_cb_pci_1602_16( calibration_setup_t *setup )
-{
-       int retval;
-       static const int caldac_subdev = 4;
-       static const int calpot_subdev = 5;
-       static const int dac08_subdev = 6;
-
-       if( comedi_get_version_code( setup->dev ) <= COMEDI_VERSION_CODE( 0, 7, 66 ) )
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.67 or later\n"
-                "for this calibration to work properly\n" );
-       }
-       setup->sv_settling_time_ns = 10000000;
-       setup->sv_order = 12;
-       retval = init_observables_1xxx( setup );
-
-       if( retval < 0 ) return retval;
-       setup_caldacs( setup, caldac_subdev );
-       setup_caldacs( setup, calpot_subdev );
-       setup_caldacs( setup, dac08_subdev );
-       setup->do_cal = cal_cb_pci_1602_16;
-       return 0;
-}
-
-static int ai_ground_observable_1xxx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range )
-{
-       return 2 * range;
-}
-
-static int ai_high_observable_1xxx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range )
-{
-       return ai_ground_observable_1xxx( setup, channel, range ) + 1;
-}
-
-static int ao_ground_observable_1xxx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range )
-{
-       int num_ai_ranges, num_ao_ranges;
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       assert( num_ai_ranges > 0 );
-       num_ao_ranges = comedi_get_n_ranges( setup->dev, setup->da_subdev, 0 );
-       assert( num_ao_ranges > 0 );
-
-       return 2 * num_ai_ranges + 2 * num_ao_ranges * channel + 2 * range;
-}
-
-static int ao_high_observable_1xxx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range )
-{
-       return ao_ground_observable_1xxx( setup, channel, range ) + 1;
-}
-
-static double ai_low_target_1xxx( calibration_setup_t *setup,
-       unsigned int range )
-{
-       if( is_bipolar( setup->dev, setup->ad_subdev, 0, range ) )
-               return 0.0;
-       else
-               return very_low_target( setup->dev, setup->ad_subdev, 0, range );
-}
-
-static int source_eeprom_addr_1xxx( calibration_setup_t *setup, unsigned int range_index )
-{
-       enum source_eeprom_addr
-       {
-               EEPROM_7V_CHAN = 0x80,
-               EEPROM_3500mV_CHAN = 0x84,
-               EEPROM_1750mV_CHAN = 0x88,
-               EEPROM_88600uV_CHAN_1001 = 0x88,
-               EEPROM_875mV_CHAN = 0x8c,
-               EEPROM_8600uV_CHAN = 0x90,
-       };
-       comedi_range *range;
-
-       range = comedi_get_range( setup->dev, setup->ad_subdev, 0, range_index );
-       if( range == NULL ) return -1;
-
-       if( range->max > 7.0 )
-               return EEPROM_7V_CHAN;
-       else if( range->max > 3.5 )
-               return EEPROM_3500mV_CHAN;
-       else if( range->max > 1.750 )
-               return EEPROM_1750mV_CHAN;
-       else if( range->max > 0.875 )
-               return EEPROM_875mV_CHAN;
-       else if( range->max > .0886 )
-               return EEPROM_88600uV_CHAN_1001;
-       else if( range->max > 0.0086 )
-               return EEPROM_8600uV_CHAN;
-
-       return -1;
-}
-
-static int ai_high_cal_source_1xxx( calibration_setup_t *setup, unsigned int range_index )
-{
-       comedi_range *range;
-
-       range = comedi_get_range( setup->dev, setup->ad_subdev, 0, range_index );
-       if( range == NULL ) return -1;
-
-       if( range->max > 7.0 )
-               return CS_1XXX_7V;
-       else if( range->max > 3.5 )
-               return CS_1002_3500mV;
-       else if( range->max > 1.750 )
-               return CS_1002_1750mV;
-       else if( range->max > 0.875 )
-               return CS_1XXX_875mV;
-       else if( range->max > .0886 )
-               return CS_1001_88600uV;
-       else if( range->max > 0.0086 )
-               return CS_1XXX_8600uV;
-
-       return -1;
-}
-
-static int ao_set_high_target_1xxx( calibration_setup_t *setup, unsigned int obs,
-       unsigned int range_index )
-{
-       double target;
-       comedi_range *range;
-
-       range = comedi_get_range( setup->dev, setup->da_subdev, 0, range_index );
-       if( range == NULL ) return -1;
-
-       target = range->max * 0.9;
-       set_target( setup, obs, target );
-       return 0;
-}
-
-static int init_observables_1xxx( calibration_setup_t *setup )
-{
-       comedi_insn tmpl, po_tmpl;
-       observable *o;
-       int retval, range, num_ai_ranges, num_ao_ranges,
-               channel, num_channels;
-       float target;
-       int ai_for_ao_range;
-
-       setup->n_observables = 0;
-
-       memset( &tmpl, 0, sizeof(tmpl) );
-       tmpl.insn = INSN_READ;
-       tmpl.n = 1;
-       tmpl.subdev = setup->ad_subdev;
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       if( num_ai_ranges < 0 ) return -1;
-
-       for( range = 0; range < num_ai_ranges; range++ )
-       {
-               o = setup->observables + ai_ground_observable_1xxx( setup, 0, range );
-               o->reference_source = CS_1XXX_GROUND;
-               assert( o->name == NULL );
-               asprintf( &o->name, "calibration source %i, range %i, ground referenced",
-                       o->reference_source, range );
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK( 0, range, AREF_GROUND) |
-                       CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->target = ai_low_target_1xxx( setup, range );
-               setup->n_observables++;
-
-               o = setup->observables + ai_high_observable_1xxx( setup, 0, range );;
-               retval = ai_high_cal_source_1xxx( setup, range );
-               if( retval < 0 ) return -1;
-               o->reference_source = retval;
-               assert( o->name == NULL );
-               asprintf( &o->name, "calibration source %i, range %i, ground referenced",
-                       o->reference_source, range );
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK( 0, range, AREF_GROUND) |
-                       CR_ALT_SOURCE | CR_ALT_FILTER;
-               retval = cb_actual_source_voltage( setup->dev, setup->eeprom_subdev,
-                       source_eeprom_addr_1xxx( setup, range ), &target );
-               if( retval < 0 ) return -1;
-               o->target = target;
-               setup->n_observables++;
-       }
-
-       if( setup->da_subdev >= 0 )
-       {
-               num_channels = comedi_get_n_channels( setup->dev, setup->da_subdev );
-               if( num_channels < 0 ) return -1;
-
-               num_ao_ranges = comedi_get_n_ranges( setup->dev, setup->da_subdev, 0 );
-               if( num_ao_ranges < 0 ) return -1;
-
-               memset( &po_tmpl, 0, sizeof(po_tmpl) );
-               po_tmpl.insn = INSN_WRITE;
-               po_tmpl.n = 1;
-               po_tmpl.subdev = setup->da_subdev;
-
-               ai_for_ao_range = get_bipolar_lowgain( setup->dev, setup->ad_subdev );
-               if( ai_for_ao_range < 0 ) return -1;
-
-               for( range = 0; range < num_ao_ranges; range++ )
-               {
-                       for( channel = 0; channel < num_channels; channel++ )
-                       {
-                               o = setup->observables + ao_ground_observable_1xxx( setup, channel, range );
-                               o->reference_source = CS_1XXX_DAC( channel );
-                               assert( o->name == NULL );
-                               asprintf( &o->name, "DAC ground calibration source, ch %i, range %i",
-                                       channel, range );
-                               o->preobserve_insn = po_tmpl;
-                               o->preobserve_insn.chanspec = CR_PACK( channel, range, AREF_GROUND );
-                               o->preobserve_insn.data = o->preobserve_data;
-                               o->observe_insn = tmpl;
-                               o->observe_insn.chanspec = CR_PACK( 0, ai_for_ao_range, AREF_GROUND) |
-                                       CR_ALT_SOURCE | CR_ALT_FILTER;
-                               set_target( setup, ao_ground_observable_1xxx( setup, channel, range ), 0.0 );
-                               setup->n_observables++;
-
-                               o = setup->observables + ao_high_observable_1xxx( setup, channel, range );
-                               o->reference_source = CS_1XXX_DAC( channel );
-                               assert( o->name == NULL );
-                               asprintf( &o->name, "DAC high calibration source, ch %i, range %i", channel,
-                                       range );
-                               o->preobserve_insn = po_tmpl;
-                               o->preobserve_insn.chanspec = CR_PACK( channel , range, AREF_GROUND );
-                               o->preobserve_insn.data = o->preobserve_data;
-                               o->observe_insn = tmpl;
-                               o->observe_insn.chanspec = CR_PACK( 0, ai_for_ao_range, AREF_GROUND) |
-                                       CR_ALT_SOURCE | CR_ALT_FILTER;
-                               ao_set_high_target_1xxx( setup, ao_high_observable_1xxx( setup, channel, range ),
-                                       range );
-                               setup->n_observables++;
-                       }
-               }
-       }
-
-       return 0;
-}
-
-enum cal_knobs_1xxx
-{
-       DAC0_GAIN_FINE_1XXX = 0,
-       DAC0_GAIN_COARSE_1XXX = 1,
-       DAC0_OFFSET_1XXX = 2,
-       DAC1_OFFSET_1XXX = 3,
-       DAC1_GAIN_FINE_1XXX = 4,
-       DAC1_GAIN_COARSE_1XXX = 5,
-       ADC_OFFSET_COARSE_1XXX = 6,
-       ADC_OFFSET_FINE_1XXX = 7,
-       ADC_GAIN_1XXX = 8,
-};
-static int adc_offset_coarse_1xxx( unsigned int channel )
-{
-       return ADC_OFFSET_COARSE_1XXX;
-}
-static int adc_offset_fine_1xxx( unsigned int channel )
-{
-       return ADC_OFFSET_FINE_1XXX;
-}
-static int adc_gain_1xxx( unsigned int channel )
-{
-       return ADC_GAIN_1XXX;
-}
-static int dac_offset_1xxx( unsigned int channel )
-{
-       if( channel )
-               return DAC1_OFFSET_1XXX;
-       else
-               return DAC0_OFFSET_1XXX;
-}
-static int dac_gain_fine_1xxx( unsigned int channel )
-{
-       if( channel )
-               return DAC1_GAIN_FINE_1XXX;
-       else
-               return DAC0_GAIN_FINE_1XXX;
-}
-static int dac_gain_coarse_1xxx( unsigned int channel )
-{
-       if( channel )
-               return DAC1_GAIN_COARSE_1XXX;
-       else
-               return DAC0_GAIN_COARSE_1XXX;
-}
-
-static int cal_cb_pci_1xxx( calibration_setup_t *setup )
-{
-       generic_layout_t layout;
-
-       init_generic_layout( &layout );
-       layout.adc_gain = adc_gain_1xxx;
-       layout.adc_offset = adc_offset_coarse_1xxx;
-       layout.adc_offset_fine = adc_offset_fine_1xxx;
-       layout.dac_gain = dac_gain_coarse_1xxx;
-       layout.dac_gain_fine = dac_gain_fine_1xxx;
-       layout.dac_offset = dac_offset_1xxx;
-       layout.adc_high_observable = ai_high_observable_1xxx;
-       layout.adc_ground_observable = ai_ground_observable_1xxx;
-       layout.dac_high_observable = ao_high_observable_1xxx;
-       layout.dac_ground_observable = ao_ground_observable_1xxx;
-       layout.adc_fractional_tolerance = get_tolerance( setup, setup->ad_subdev, 1.0 );
-       layout.dac_fractional_tolerance = get_tolerance( setup, setup->da_subdev, 1.0 );
-       return generic_cal_by_range( setup, &layout );
-}
-
-enum cal_knobs_1602_16
-{
-       DAC0_GAIN_FINE_1602_16 = 0,
-       DAC0_GAIN_COARSE_1602_16 = 1,
-       DAC0_OFFSET_COARSE_1602_16 = 2,
-       DAC1_OFFSET_COARSE_1602_16 = 3,
-       DAC1_GAIN_FINE_1602_16 = 4,
-       DAC1_GAIN_COARSE_1602_16 = 5,
-       DAC0_OFFSET_FINE_1602_16 = 6,
-       DAC1_OFFSET_FINE_1602_16 = 7,
-       ADC_GAIN_1602_16 = 8,
-       ADC_POSTGAIN_OFFSET_1602_16 = 9,
-       ADC_PREGAIN_OFFSET_1602_16 = 10,
-};
-static int dac_gain_coarse_1602_16( unsigned int channel )
-{
-       if( channel ) return DAC1_GAIN_COARSE_1602_16;
-       else return DAC0_GAIN_COARSE_1602_16;
-}
-static int dac_gain_fine_1602_16( unsigned int channel )
-{
-       if( channel ) return DAC1_GAIN_FINE_1602_16;
-       else return DAC0_GAIN_FINE_1602_16;
-}
-static int dac_offset_coarse_1602_16( unsigned int channel )
-{
-       if( channel ) return DAC1_OFFSET_COARSE_1602_16;
-       else return DAC0_OFFSET_COARSE_1602_16;
-}
-static int dac_offset_fine_1602_16( unsigned int channel )
-{
-       if( channel ) return DAC1_OFFSET_FINE_1602_16;
-       else return DAC0_OFFSET_FINE_1602_16;
-}
-static int adc_gain_1602_16( unsigned int channel )
-{
-       return ADC_GAIN_1602_16;
-}
-static int adc_pregain_offset_1602_16( unsigned int channel )
-{
-       return ADC_PREGAIN_OFFSET_1602_16;
-}
-static int adc_postgain_offset_1602_16( unsigned int channel )
-{
-       return ADC_POSTGAIN_OFFSET_1602_16;
-}
-static int cal_cb_pci_1602_16( calibration_setup_t *setup )
-{
-       generic_layout_t layout;
-
-       init_generic_layout( &layout );
-       layout.adc_gain = adc_gain_1602_16;
-       layout.adc_offset = adc_pregain_offset_1602_16;
-       layout.adc_postgain_offset = adc_postgain_offset_1602_16;
-       layout.dac_gain = dac_gain_coarse_1602_16;
-       layout.dac_gain_fine = dac_gain_fine_1602_16;
-       layout.dac_offset = dac_offset_coarse_1602_16;
-       layout.dac_offset_fine = dac_offset_fine_1602_16;
-       layout.adc_high_observable = ai_high_observable_1xxx;
-       layout.adc_ground_observable = ai_ground_observable_1xxx;
-       layout.dac_high_observable = ao_high_observable_1xxx;
-       layout.dac_ground_observable = ao_ground_observable_1xxx;
-       layout.adc_fractional_tolerance = get_tolerance( setup, setup->ad_subdev, 1.0 );
-       layout.dac_fractional_tolerance = get_tolerance( setup, setup->da_subdev, 1.0 );
-       /* The bipolar postgain calibration should be good for both
-        * bipolar and unipolar ranges, so disable separate
-        * unipolar postgain offset calibration (it will fail
-        * horribly anyways if you try it).
-        */
-       layout.do_adc_unipolar_postgain = 0;
-       return generic_cal_by_range( setup, &layout );
-}
-
-// converts calibration source voltages from two 16 bit eeprom values to a floating point value
-static float eeprom16_to_source( uint16_t *data )
-{
-       union translator
-       {
-               uint32_t bits;
-               float   value;
-       };
-
-       union translator my_translator;
-
-       my_translator.bits = ( data[ 0 ] & 0xffff ) | ( ( data[ 1 ] << 16 ) & 0xffff0000 );
-
-       return my_translator.value;
-}
-
-static float eeprom8_to_source( uint8_t *data )
-{
-       union translator
-       {
-               uint32_t bits;
-               float   value;
-       };
-       union translator my_translator;
-       int i;
-
-       my_translator.bits = 0;
-       for( i = 0; i < 4; i++ )
-       {
-               my_translator.bits |= ( data[ i ] & 0xffff ) << ( 8 * i );
-       }
-
-       return my_translator.value;
-}
-
-int cb_actual_source_voltage( comedi_t *dev, unsigned int subdevice, unsigned int eeprom_channel, float *voltage)
-{
-       int retval;
-       unsigned int i;
-       lsampl_t data;
-       int max_data;
-
-       max_data = comedi_get_maxdata( dev, subdevice, eeprom_channel );
-
-       if( max_data == 0xffff )
-       {
-               uint16_t word[ 2 ];
-
-               for( i = 0; i < 2; i++ )
-               {
-                       retval = comedi_data_read( dev, subdevice, eeprom_channel + i, 0, 0, &data );
-                       if( retval < 0 )
-                       {
-                               comedi_perror( __FUNCTION__ );
-                               return retval;
-                       }
-                       word[ i ] = data;
-               }
-               *voltage = eeprom16_to_source( word );
-       }else if( max_data == 0xff )
-       {
-               uint8_t byte[ 4 ];
-
-               for( i = 0; i < 4; i++ )
-               {
-                       retval = comedi_data_read( dev, subdevice, eeprom_channel + i, 0, 0, &data );
-                       if( retval < 0 )
-                       {
-                               comedi_perror( __FUNCTION__ );
-                               return retval;
-                       }
-                       byte[ i ] = data;
-               }
-               *voltage = eeprom8_to_source( byte );
-       }else
-       {
-               fprintf( stderr, "%s: maxdata = 0x%x invalid for subdevice %i, channel %i\n",
-                       __FUNCTION__, max_data, subdevice, eeprom_channel);
-               return -1;
-       }
-
-       DPRINT(1, "eeprom ch 0x%x gives calibration source of %gV\n", eeprom_channel, *voltage);
-       return 0;
-}
diff --git a/comedi_calibrate/cb64.c b/comedi_calibrate/cb64.c
deleted file mode 100644 (file)
index be6fc54..0000000
+++ /dev/null
@@ -1,1290 +0,0 @@
-/***************************************************************************
-       cb64.c  -  calibration support for some Measurement computing boards.
-                             -------------------
-
-    begin                : Sat Apr 27 2002
-    copyright            : (C) 2002,2003 by Frank Mori Hess
-    email                : fmhess@users.sourceforge.net
-
- ***************************************************************************/
-
-/***************************************************************************
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU Lesser General Public License as        *
- *   published by                                                          *
- *   the Free Software Foundation; either version 2.1 of the License, or   *
- *   (at your option) any later version.                                   *
- *                                                                         *
- ***************************************************************************/
-
-#define _GNU_SOURCE
-
-#include <stdio.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <errno.h>
-#include <getopt.h>
-#include <ctype.h>
-#include <math.h>
-#include <stdlib.h>
-#include <string.h>
-#include <stdint.h>
-#include <assert.h>
-
-#include "calib.h"
-
-
-char cb64_id[] = "$Id$";
-
-struct board_struct{
-       char *name;
-       int status;
-       int (*setup)( calibration_setup_t *setup );
-};
-
-static int setup_cb_pci_64xx( calibration_setup_t *setup );
-static int setup_cb_pci_60xx( calibration_setup_t *setup );
-static int setup_cb_pci_603x( calibration_setup_t *setup );
-static int setup_cb_pci_6052( calibration_setup_t *setup );
-static int setup_cb_pci_4020( calibration_setup_t *setup );
-static int setup_cb_pci_unknown( calibration_setup_t *setup );
-
-static int cal_cb_pci_64xx( calibration_setup_t *setup );
-static int cal_cb_pci_60xx( calibration_setup_t *setup );
-static int cal_cb_pci_6052( calibration_setup_t *setup );
-static int cal_cb_pci_4020( calibration_setup_t *setup );
-
-static int init_observables_64xx( calibration_setup_t *setup );
-static int init_observables_60xx( calibration_setup_t *setup );
-static int init_observables_4020( calibration_setup_t *setup );
-static int init_observables_unknown( calibration_setup_t *setup );
-
-static struct board_struct boards[]={
-       { "pci-das6402/16",     STATUS_SOME,    setup_cb_pci_64xx },
-       { "pci-das6402/12",     STATUS_GUESS,   setup_cb_pci_64xx },
-       { "pci-das64/m1/16",    STATUS_GUESS,   setup_cb_pci_64xx },
-       { "pci-das64/m2/16",    STATUS_GUESS,   setup_cb_pci_64xx },
-       { "pci-das64/m3/16",    STATUS_GUESS,   setup_cb_pci_64xx },
-       { "pci-das6014",        STATUS_DONE,    setup_cb_pci_60xx },
-       { "pci-das6023",        STATUS_DONE,    setup_cb_pci_60xx },
-       { "pci-das6025",        STATUS_DONE,    setup_cb_pci_60xx },
-       { "pci-das6030",        STATUS_GUESS,   setup_cb_pci_60xx },
-       { "pci-das6031",        STATUS_GUESS,   setup_cb_pci_603x },
-       { "pci-das6032",        STATUS_GUESS,   setup_cb_pci_603x },
-       { "pci-das6033",        STATUS_GUESS,   setup_cb_pci_603x },
-       { "pci-das6034",        STATUS_DONE,    setup_cb_pci_603x },
-       { "pci-das6035",        STATUS_GUESS,   setup_cb_pci_603x },
-       { "pci-das6036",        STATUS_GUESS,   setup_cb_pci_603x },
-       { "pci-das6040",        STATUS_GUESS,   setup_cb_pci_60xx },
-       { "pci-das6052",        STATUS_GUESS,   setup_cb_pci_6052 },
-       { "pci-das6070",        STATUS_GUESS,   setup_cb_pci_60xx },
-       { "pci-das6071",        STATUS_GUESS,   setup_cb_pci_60xx },
-       { "pci-das4020/12",     STATUS_DONE,    setup_cb_pci_4020 },
-};
-
-static const int num_boards = ( sizeof(boards) / sizeof(boards[0]) );
-
-enum calibration_source_60xx
-{
-       CS_60XX_GROUND = 0,
-       CS_60XX_10V = 1,
-       CS_60XX_5V = 2,
-       CS_60XX_500mV = 3,
-       CS_60XX_50mV = 4,
-       CS_60XX_UNUSED = 5,     // 0V
-       CS_60XX_DAC0 = 6,
-       CS_60XX_DAC1 = 7,
-};
-
-enum calibration_source_64xx
-{
-       CS_64XX_GROUND = 0,
-       CS_64XX_7V = 1,
-       CS_64XX_3500mV = 2,
-       CS_64XX_1750mV = 3,
-       CS_64XX_875mV = 4,
-       CS_64XX_8600uV = 5,
-       CS_64XX_DAC0 = 6,
-       CS_64XX_DAC1 = 7,
-};
-
-enum calibration_source_4020
-{
-       CS_4020_4375mV = 5,
-       CS_4020_625mV = 6,
-       CS_4020_GROUND = 7,
-};
-
-enum cal_knobs_60xx
-{
-       DAC0_OFFSET_60XX = 0,
-       DAC0_GAIN_60XX = 1,
-       DAC1_OFFSET_60XX = 2,
-       DAC1_GAIN_60XX = 3,
-       ADC_OFFSET_FINE_60XX = 4,
-       ADC_OFFSET_COARSE_60XX = 5,
-       ADC_GAIN_COARSE_60XX = 6,
-       ADC_GAIN_FINE_60XX = 7,
-};
-
-enum cal_knobs_64xx
-{
-       DAC0_GAIN_FINE_64XX = 0,
-       DAC0_GAIN_COARSE_64XX = 1,
-       DAC0_OFFSET_COARSE_64XX = 2,
-       DAC1_OFFSET_COARSE_64XX = 3,
-       DAC1_GAIN_FINE_64XX = 4,
-       DAC1_GAIN_COARSE_64XX = 5,
-       DAC0_OFFSET_FINE_64XX = 6,
-       DAC1_OFFSET_FINE_64XX = 7,
-       ADC_GAIN_64XX = 8,
-       ADC_OFFSET_64XX = 9,
-};
-
-enum cal_knobs_6052    // FIXME these values are uneducated guesses
-{
-       DAC0_GAIN_FINE_6052 = 0,
-       DAC0_GAIN_COARSE_6052 = 1,
-       DAC0_OFFSET_COARSE_6052 = 2,
-       DAC1_OFFSET_COARSE_6052 = 3,
-       DAC1_GAIN_FINE_6052 = 4,
-       DAC1_GAIN_COARSE_6052 = 5,
-       DAC0_OFFSET_FINE_6052 = 6,
-       DAC1_OFFSET_FINE_6052 = 7,
-       ADC_GAIN_6052 = 8,
-       ADC_OFFSET_6052 = 9,
-};
-
-int cb64_setup( calibration_setup_t *setup, const char *device_name )
-{
-       unsigned int i;
-
-       for( i = 0; i < num_boards; i++ )
-       {
-               if( !strcmp( device_name, boards[i].name ) )
-               {
-                       setup->status = boards[i].status;
-                       return boards[i].setup( setup );
-                       break;
-               }
-       }
-       if( i == num_boards ) return -1;
-
-       return 0;
-}
-
-static int setup_cb_pci_64xx( calibration_setup_t *setup )
-{
-       static const int caldac_subdev = 6;
-       static const int calpot_subdev = 7;
-
-       init_observables_64xx( setup );
-       setup_caldacs( setup, caldac_subdev );
-       setup_caldacs( setup, calpot_subdev );
-       setup->do_cal = cal_cb_pci_64xx;
-       return 0;
-}
-
-static int setup_cb_pci_60xx( calibration_setup_t *setup )
-{
-       static const int caldac_subdev = 6;
-       init_observables_60xx( setup );
-       setup_caldacs( setup, caldac_subdev );
-       setup->do_cal = cal_cb_pci_60xx;
-       return 0;
-}
-
-static int setup_cb_pci_603x(calibration_setup_t *setup)
-{
-       int retval = setup_cb_pci_60xx(setup);
-       //extra delay not needed by 6023 and 6024, but is needed by 6034
-       setup->sv_settling_time_ns = 100000000;
-       return retval;
-}
-
-static int setup_cb_pci_4020( calibration_setup_t *setup )
-{
-       static const int caldac_subdev = 6;
-
-       init_observables_4020( setup );
-       setup_caldacs( setup, caldac_subdev );
-       setup->do_cal = cal_cb_pci_4020;
-       return 0;
-}
-
-static int setup_cb_pci_unknown( calibration_setup_t *setup )
-{
-       static const int caldac_subdev = 6;
-       init_observables_unknown( setup );
-       setup_caldacs( setup, caldac_subdev );
-       setup->do_cal = 0;
-       return 0;
-}
-
-static int ai_ground_observable_index_64xx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range )
-{
-       return 2 * range;
-}
-
-static int ai_high_observable_index_64xx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range )
-{
-       return 2 * range + 1;
-}
-
-static int ao_ground_observable_index_64xx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ao_range )
-{
-       int num_ai_ranges;
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       assert( num_ai_ranges >= 0 );
-
-       return 2 * num_ai_ranges + 2 * channel + 4 * ao_range;
-}
-
-static int ao_high_observable_index_64xx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ao_range )
-{
-       int num_ai_ranges;
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       assert( num_ai_ranges >= 0 );
-
-       return 2 * num_ai_ranges + 2 * channel + 4 * ao_range + 1;
-}
-
-static int source_eeprom_addr_64xx( calibration_setup_t *setup, unsigned int range_index )
-{
-       enum source_eeprom_addr
-       {
-               EEPROM_7V_CHAN = 0x30,
-               EEPROM_3500mV_CHAN = 0x32,
-               EEPROM_1750mV_CHAN = 0x34,
-               EEPROM_875mV_CHAN = 0x36,
-               EEPROM_8600uV_CHAN = 0x38,
-       };
-       comedi_range *range;
-
-       range = comedi_get_range( setup->dev, setup->ad_subdev, 0, range_index );
-       if( range == NULL ) 
-       {
-               fprintf(stderr, "%s: failed to get range\n", __FUNCTION__);     
-               return -1;
-       }
-       if( range->max > 7.0 )
-               return EEPROM_7V_CHAN;
-       else if( range->max > 3.5 )
-               return EEPROM_3500mV_CHAN;
-       else if( range->max > 0.875 )
-               return EEPROM_875mV_CHAN;
-       else if( range->max > 0.0086 )
-               return EEPROM_8600uV_CHAN;
-
-       return -1;
-}
-
-static int ai_low_cal_source_64xx( calibration_setup_t *setup, unsigned int range_index )
-{
-       comedi_range *range;
-
-       range = comedi_get_range( setup->dev, setup->ad_subdev, 0, range_index );
-       if( range == NULL )
-       {
-               fprintf(stderr, "%s: failed to get range\n", __FUNCTION__);     
-               return -1;
-       }
-       if( range->min > -0.001 )
-               return CS_64XX_8600uV;
-       else
-               return CS_64XX_GROUND;
-}
-
-static int ai_high_cal_source_64xx( calibration_setup_t *setup, unsigned int range_index )
-{
-       comedi_range *range;
-
-       range = comedi_get_range( setup->dev, setup->ad_subdev, 0, range_index );
-       if( range == NULL )
-       {
-               fprintf(stderr, "%s: failed to get range\n", __FUNCTION__);     
-               return -1;
-       }
-       if( range->max > 7.0 )
-               return CS_64XX_7V;
-       else if( range->max > 3.5 )
-               return CS_64XX_3500mV;
-       else if( range->max > 0.875 )
-               return CS_64XX_875mV;
-       else if( range->max > 0.0086 )
-               return CS_64XX_8600uV;
-
-       return -1;
-}
-
-static int ao_cal_src_64xx( unsigned int channel )
-{
-       switch( channel )
-       {
-       case 0:
-               return CS_64XX_DAC0;
-               break;
-       case 1:
-               return CS_64XX_DAC1;
-               break;
-       default:
-               return -1;
-               break;
-       }
-}
-
-static int ao_set_high_target_64xx( calibration_setup_t *setup, unsigned int obs,
-       unsigned int range_index )
-{
-       double target;
-       comedi_range *range;
-
-       range = comedi_get_range( setup->dev, setup->da_subdev, 0, range_index );
-       if( range == NULL ) 
-       {
-               fprintf(stderr, "%s: failed to get range\n", __FUNCTION__);     
-               return -1;
-       }
-       target = range->max * 0.9;
-       set_target( setup, obs, target );
-       return 0;
-}
-
-static int init_observables_64xx( calibration_setup_t *setup )
-{
-       comedi_insn tmpl;
-       observable *o;
-       int retval;
-       float target;
-       int range, num_ai_ranges, num_ao_ranges;
-
-       memset( &tmpl, 0, sizeof(tmpl) );
-       tmpl.insn = INSN_READ;
-       tmpl.n = 1;
-       tmpl.subdev = setup->ad_subdev;
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       if( num_ai_ranges < 0 )
-       {
-               fprintf(stderr, "%s: failed to get number of ai ranges\n", __FUNCTION__);
-               return -1;
-       }
-       setup->n_observables = 0;
-
-       for( range = 0; range < num_ai_ranges; range++ )
-       {
-               o = setup->observables + ai_ground_observable_index_64xx( setup, 0, range );
-               retval = ai_low_cal_source_64xx( setup, range );
-               if( retval < 0 ) return -1;
-               o->reference_source = retval;
-               assert( o->name == NULL );
-               asprintf( &o->name, "calibration source %i, range %i, ground referenced",
-                       o->reference_source, range );
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK( 0, range, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->target = 0.0;
-               setup->n_observables++;
-
-               o = setup->observables + ai_high_observable_index_64xx( setup, 0, range );
-               retval = ai_high_cal_source_64xx( setup, range );
-               if( retval < 0 ) return -1;
-               o->reference_source = retval;
-               assert( o->name == NULL );
-               asprintf( &o->name, "calibration source %i, range %i, ground referenced",
-                       o->reference_source, range );
-               o->name = "calibration source, 10V bipolar range, ground referenced";
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK( 0, range, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-               retval = cb_actual_source_voltage( setup->dev, setup->eeprom_subdev,
-                       source_eeprom_addr_64xx( setup, range ), &target );
-               if( retval < 0 ) return -1;
-               o->target = target;
-               setup->n_observables++;
-       }
-       if( setup->da_subdev >= 0 )
-       {
-               comedi_insn po_tmpl;
-
-               memset( &po_tmpl, 0, sizeof(po_tmpl) );
-               po_tmpl.insn = INSN_WRITE;
-               po_tmpl.n = 1;
-               po_tmpl.subdev = setup->da_subdev;
-
-               num_ao_ranges = comedi_get_n_ranges( setup->dev, setup->da_subdev, 0 );
-               if( num_ao_ranges < 0 )
-               {
-                       fprintf(stderr, "%s: failed to get number of ao ranges\n", __FUNCTION__);
-                       return -1;
-               }
-
-               for( range = 0; range < num_ao_ranges; range++ )
-               {
-                       int dac_chan, ai_range;
-                       ai_range = get_bipolar_lowgain( setup->dev, setup->ad_subdev );
-                       if( ai_range < 0 ) return -1;
-
-                       for( dac_chan = 0; dac_chan < 2; dac_chan++ )
-                       {
-                               o = setup->observables + ao_ground_observable_index_64xx( setup,
-                                       dac_chan, range );
-                               o->reference_source = ao_cal_src_64xx( dac_chan );
-                               assert( o->name == NULL );
-                               asprintf( &o->name, "dac%i low, range %i, ground referenced", dac_chan, range );
-                               o->preobserve_insn = po_tmpl;
-                               o->preobserve_insn.chanspec = CR_PACK( dac_chan, range, AREF_GROUND );
-                               o->preobserve_insn.data = o->preobserve_data;
-                               o->observe_insn = tmpl;
-                               o->observe_insn.chanspec = CR_PACK( 0, ai_range, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-                               set_target( setup, ao_ground_observable_index_64xx( setup, dac_chan, range ), 0.0 );
-                               setup->n_observables++;
-
-                               o = setup->observables + ao_high_observable_index_64xx( setup, dac_chan, range );
-                               o->reference_source = ao_cal_src_64xx( dac_chan );
-                               assert( o->name == NULL );
-                               asprintf( &o->name, "dac%i high, range %i, ground referenced", dac_chan, range );
-                               o->preobserve_insn = po_tmpl;
-                               o->preobserve_insn.chanspec = CR_PACK( dac_chan, range, AREF_GROUND );
-                               o->preobserve_insn.data = o->preobserve_data;
-                               o->observe_insn = tmpl;
-                               o->observe_insn.chanspec = CR_PACK( 0, ai_range, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-                               retval = ao_set_high_target_64xx( setup,
-                                       ao_high_observable_index_64xx( setup, dac_chan, range ), range );
-                               if( retval < 0 ) return -1;
-                               setup->n_observables++;
-                       }
-               }
-       }
-
-       return 0;
-}
-
-static int ai_high_observable_index_60xx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ai_range )
-{
-       return ai_range * 2 + 1;
-}
-
-static int ai_ground_observable_index_60xx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ai_range )
-{
-       return ai_range * 2;
-}
-
-static int ao_high_observable_index_60xx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ao_range )
-{
-       int num_ai_ranges;
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       assert( num_ai_ranges >= 0 );
-
-       return 2 * num_ai_ranges + 2 * channel + 4 * ao_range + 1;
-}
-
-static int ao_ground_observable_index_60xx( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ao_range )
-{
-       int num_ai_ranges;
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       assert( num_ai_ranges >= 0 );
-
-       return 2 * num_ai_ranges + 2 * channel + 4 * ao_range;
-}
-
-static int ai_cal_src_voltage_60xx( calibration_setup_t *setup,
-       unsigned int calibration_source, float *voltage )
-{
-       enum source_eeprom_addr
-       {
-               EEPROM_10V_CHAN = 0x30,
-               EEPROM_5V_CHAN = 0x32,
-               EEPROM_500mV_CHAN = 0x38,
-               EEPROM_50mV_CHAN = 0x3e,
-               EEPROM_8mV_CHAN = 0x40, // bogus?
-       };
-       int retval;
-
-       switch( calibration_source )
-       {
-               case CS_60XX_GROUND:
-                       *voltage = 0.0;
-                       retval = 0;
-                       break;
-               case CS_60XX_10V:
-                       retval = cb_actual_source_voltage( setup->dev, setup->eeprom_subdev,
-                               EEPROM_10V_CHAN, voltage );
-                       break;
-               case CS_60XX_5V:
-                       retval = cb_actual_source_voltage( setup->dev, setup->eeprom_subdev,
-                               EEPROM_5V_CHAN, voltage );
-                       break;
-               case CS_60XX_500mV:
-                       retval = cb_actual_source_voltage( setup->dev, setup->eeprom_subdev,
-                               EEPROM_500mV_CHAN, voltage );
-                       break;
-               case CS_60XX_50mV:
-                       retval = cb_actual_source_voltage( setup->dev, setup->eeprom_subdev,
-                               EEPROM_50mV_CHAN, voltage );
-                       break;
-               default:
-                       fprintf( stderr, "invalid calibration_source in ai_cal_src_voltage_60xx()\n" );
-                       retval = -1;
-                       break;
-       }
-       return retval;
-}
-
-static int high_ai_cal_src_60xx( calibration_setup_t *setup, unsigned int ai_range )
-{
-       comedi_range *range;
-
-       range = comedi_get_range( setup->dev, setup->ad_subdev, 0, ai_range );
-       if( range == NULL ) 
-       {
-               fprintf(stderr, "%s: failed to get range\n", __FUNCTION__);     
-               return -1;
-       }
-       if( range->max > 9.999 )
-               return CS_60XX_10V;
-       else if( range->max > 4.999 )
-               return CS_60XX_5V;
-       else if( range->max > 0.4999 )
-               return CS_60XX_500mV;
-       else if( range->max > 0.04999 )
-               return CS_60XX_50mV;
-
-       return -1;
-}
-
-static int ao_cal_src_60xx( unsigned int channel )
-{
-       switch( channel )
-       {
-       case 0:
-               return CS_60XX_DAC0;
-               break;
-       case 1:
-               return CS_60XX_DAC1;
-               break;
-       default:
-               return -1;
-               break;
-       }
-}
-
-static int init_observables_60xx( calibration_setup_t *setup )
-{
-       comedi_insn tmpl;
-       observable *o;
-       int retval, num_ranges, i;
-       float target;
-       enum
-       {
-               CAL_SRC_GROUND = 0,
-       };
-
-       memset( &tmpl, 0, sizeof(tmpl) );
-       tmpl.insn = INSN_READ;
-       tmpl.n = 1;
-       tmpl.subdev = setup->ad_subdev;
-
-       setup->n_observables = 0;
-
-       num_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       if( num_ranges < 0 ) 
-       {
-               fprintf(stderr, "%s: failed to get number of ai ranges\n", __FUNCTION__);
-               return -1;
-       }
-       for( i = 0; i < num_ranges; i++ )
-       {
-               o = setup->observables + ai_ground_observable_index_60xx( setup, 0, i );
-               o->reference_source = CAL_SRC_GROUND;
-               assert( o->name == NULL );
-               asprintf( &o->name, "calibration source %i, range %i, ground referenced",
-                       o->reference_source, i );
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK( 0, i, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->target = 0.0;
-               setup->n_observables++;
-
-               o = setup->observables + ai_high_observable_index_60xx( setup, 0, i );
-               retval = high_ai_cal_src_60xx( setup, i );
-               if( retval < 0 ) return -1;
-               o->reference_source = retval;
-               assert( o->name == NULL );
-               asprintf( &o->name, "calibration source %i, range %i, ground referenced",
-                       o->reference_source, i );
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK( 0, i, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-               retval = ai_cal_src_voltage_60xx( setup, o->reference_source, &target );
-               if( retval < 0 ) return -1;
-               o->target = target;
-               setup->n_observables++;
-       }
-
-       if( setup->da_subdev >= 0 )
-       {
-               comedi_insn po_tmpl;
-
-               memset( &po_tmpl, 0, sizeof(po_tmpl) );
-               po_tmpl.insn = INSN_WRITE;
-               po_tmpl.n = 1;
-               po_tmpl.subdev = setup->da_subdev;
-
-               num_ranges = comedi_get_n_ranges( setup->dev, setup->da_subdev, 0 );
-               if( num_ranges < 0 ) 
-               {
-                       fprintf(stderr, "%s: failed to get number of ao ranges\n", __FUNCTION__);
-                       return -1;
-               }
-
-               for( i = 0; i < num_ranges; i++ )
-               {
-                       int dac_chan;
-                       for( dac_chan = 0; dac_chan < 2; dac_chan++ )
-                       {
-                               o = setup->observables + ao_ground_observable_index_60xx( setup,
-                                       dac_chan, i );
-                               o->reference_source = ao_cal_src_60xx( dac_chan );
-                               assert( o->name == NULL );
-                               asprintf( &o->name, "dac%i low, range %i, ground referenced", dac_chan, i );
-                               o->preobserve_insn = po_tmpl;
-                               o->preobserve_insn.chanspec = CR_PACK( dac_chan, i, AREF_GROUND );
-                               o->preobserve_insn.data = o->preobserve_data;
-                               o->observe_insn = tmpl;
-                               o->observe_insn.chanspec = CR_PACK( 0, 0, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-                               set_target( setup, ao_ground_observable_index_60xx( setup, dac_chan, i ), 0.0 );
-                               setup->n_observables++;
-
-                               o = setup->observables + ao_high_observable_index_60xx( setup, dac_chan, i );
-                               o->reference_source = ao_cal_src_60xx( dac_chan );
-                               assert( o->name == NULL );
-                               asprintf( &o->name, "dac%i high, range %i, ground referenced", dac_chan, i );
-                               o->preobserve_insn = po_tmpl;
-                               o->preobserve_insn.chanspec = CR_PACK( dac_chan, i, AREF_GROUND );
-                               o->preobserve_insn.data = o->preobserve_data;
-                               o->observe_insn = tmpl;
-                               o->observe_insn.chanspec = CR_PACK( 0, 0, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-                               set_target( setup, ao_high_observable_index_60xx( setup, dac_chan, i ), 9.0 );
-                               setup->n_observables++;
-                       }
-               }
-       }
-
-       return 0;
-}
-
-static int ai_low_observable_index_4020( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ai_range )
-{
-       return 4 * channel + 2 * ai_range;
-}
-
-static int ai_high_observable_index_4020( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ai_range )
-{
-       return ai_low_observable_index_4020( setup, channel, ai_range ) + 1;
-}
-
-static int high_ai_cal_src_4020( calibration_setup_t *setup, unsigned int ai_range )
-{
-       comedi_range *range;
-
-       range = comedi_get_range( setup->dev, setup->ad_subdev, 0, ai_range );
-       if( range == NULL ) 
-       {
-               fprintf(stderr, "%s: failed to get range\n", __FUNCTION__);     
-               return -1;
-       }
-       if( range->max > 4.4  )
-               return CS_4020_4375mV;
-       else if( range->max > 0.7 )
-               return CS_4020_625mV;
-
-       return -1;
-}
-
-static int source_eeprom_addr_4020( calibration_setup_t *setup, unsigned int range_index )
-{
-       enum source_eeprom_addr
-       {
-               EEPROM_4375mV_CHAN = 0x30,
-               EEPROM_625mV_CHAN = 0x32,
-       };
-       comedi_range *range;
-
-       range = comedi_get_range( setup->dev, setup->ad_subdev, 0, range_index );
-       if( range == NULL ) 
-       {
-               fprintf(stderr, "%s: failed to get range\n", __FUNCTION__);     
-               return -1;
-       }
-       if( range->max > 4.4 )
-               return EEPROM_4375mV_CHAN;
-       else if( range->max > 0.7 )
-               return EEPROM_625mV_CHAN;
-
-       return -1;
-}
-
-static int init_observables_4020( calibration_setup_t *setup )
-{
-       comedi_insn tmpl;
-       observable *o;
-       float target;
-       int retval;
-       int range, channel, num_ranges, num_channels;
-
-       memset( &tmpl, 0, sizeof(tmpl) );
-       tmpl.insn = INSN_READ;
-       tmpl.n = 1;
-       tmpl.subdev = setup->ad_subdev;
-
-       num_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       if( num_ranges < 0 )
-       {
-               fprintf(stderr, "%s: failed to get number of ai ranges\n", __FUNCTION__);
-               return -1;
-       }
-
-       num_channels = comedi_get_n_channels( setup->dev, setup->ad_subdev );
-       if( num_channels < 0 ) 
-       {
-               fprintf(stderr, "%s: failed to get number of ai channels\n", __FUNCTION__);
-               return -1;
-       }
-
-       setup->n_observables = 0;
-
-       for( channel = 0; channel < num_channels; channel++ )
-       {
-               for( range = 0; range < num_ranges; range++ )
-               {
-                       o = setup->observables + ai_low_observable_index_4020( setup, channel, range );
-                       assert( o->name == NULL );
-                       asprintf( &o->name, "ground calibration source, ch %i, range %i, ground referenced",
-                               channel, range );
-                       o->reference_source = CS_4020_GROUND;
-                       o->observe_insn = tmpl;
-                       o->observe_insn.chanspec = CR_PACK( channel, range, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-                       o->target = 0.0;
-                       setup->n_observables++;
-
-                       o = setup->observables + ai_high_observable_index_4020( setup, channel, range );
-                       retval = high_ai_cal_src_4020( setup, range );
-                       if( retval < 0 ) return -1;
-                       o->reference_source = retval;
-                       assert( o->name == NULL );
-                       asprintf( &o->name, "calibration source %i, ch %i, range %i, ground referenced",
-                               o->reference_source, channel, range );
-                       o->observe_insn = tmpl;
-                       o->observe_insn.chanspec = CR_PACK( channel, range, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-                       retval = cb_actual_source_voltage( setup->dev, setup->eeprom_subdev,
-                               source_eeprom_addr_4020( setup, range ), &target );
-                       if( retval < 0 ) return retval;
-                       o->target = target;
-                       setup->n_observables++;
-               }
-       }
-
-       return 0;
-}
-
-static int adc_offset_64xx( unsigned int channel )
-{
-       return ADC_OFFSET_64XX;
-}
-static int adc_gain_64xx( unsigned int channel )
-{
-       return ADC_GAIN_64XX;
-}
-static int dac_gain_coarse_64xx( unsigned int channel )
-{
-       if( channel ) return DAC1_GAIN_COARSE_64XX;
-       else return DAC0_GAIN_COARSE_64XX;
-}
-static int dac_gain_fine_64xx( unsigned int channel )
-{
-       if( channel ) return DAC1_GAIN_FINE_64XX;
-       else return DAC0_GAIN_FINE_64XX;
-}
-static int dac_offset_coarse_64xx( unsigned int channel )
-{
-       if( channel ) return DAC1_OFFSET_COARSE_64XX;
-       else return DAC0_OFFSET_COARSE_64XX;
-}
-static int dac_offset_fine_64xx( unsigned int channel )
-{
-       if( channel ) return DAC1_OFFSET_FINE_64XX;
-       else return DAC0_OFFSET_FINE_64XX;
-}
-static int cal_cb_pci_64xx( calibration_setup_t *setup )
-{
-       generic_layout_t layout;
-
-       init_generic_layout( &layout );
-       layout.adc_gain = adc_gain_64xx;
-       layout.adc_offset = adc_offset_64xx;
-       layout.dac_gain = dac_gain_coarse_64xx;
-       layout.dac_gain_fine = dac_gain_fine_64xx;
-       layout.dac_offset = dac_offset_coarse_64xx;
-       layout.dac_offset_fine = dac_offset_fine_64xx;
-       layout.adc_high_observable = ai_high_observable_index_64xx;
-       layout.adc_ground_observable = ai_ground_observable_index_64xx;
-       layout.dac_high_observable = ao_high_observable_index_64xx;
-       layout.dac_ground_observable = ao_ground_observable_index_64xx;
-       layout.adc_fractional_tolerance = get_tolerance( setup, setup->ad_subdev, 1.0 );
-       layout.dac_fractional_tolerance = get_tolerance( setup, setup->da_subdev, 1.0 );
-       return generic_cal_by_range( setup, &layout );
-}
-
-static int adc_gain_coarse_60xx( unsigned int channel )
-{
-       return ADC_GAIN_COARSE_60XX;
-}
-static int adc_gain_fine_60xx( unsigned int channel )
-{
-       return ADC_GAIN_FINE_60XX;
-}
-static int adc_offset_coarse_60xx( unsigned int channel )
-{
-       return ADC_OFFSET_COARSE_60XX;
-}
-static int adc_offset_fine_60xx( unsigned int channel )
-{
-       return ADC_OFFSET_FINE_60XX;
-}
-static int dac_gain_60xx( unsigned int channel )
-{
-       if( channel ) return DAC1_GAIN_60XX;
-       else return DAC0_GAIN_60XX;
-}
-static int dac_offset_60xx( unsigned int channel )
-{
-       if( channel ) return DAC1_OFFSET_60XX;
-       else return DAC0_OFFSET_60XX;
-}
-static int cal_cb_pci_60xx( calibration_setup_t *setup )
-{
-       generic_layout_t layout;
-
-       init_generic_layout( &layout );
-       layout.adc_gain = adc_gain_coarse_60xx;
-       layout.adc_gain_fine = adc_gain_fine_60xx;
-       layout.adc_offset = adc_offset_coarse_60xx;
-       layout.adc_offset_fine = adc_offset_fine_60xx;
-       layout.dac_gain = dac_gain_60xx;
-       layout.dac_offset = dac_offset_60xx;
-       layout.adc_high_observable = ai_high_observable_index_60xx;
-       layout.adc_ground_observable = ai_ground_observable_index_60xx;
-       layout.dac_high_observable = ao_high_observable_index_60xx;
-       layout.dac_ground_observable = ao_ground_observable_index_60xx;
-       layout.adc_fractional_tolerance = get_tolerance( setup, setup->ad_subdev, 1.0 );
-       layout.dac_fractional_tolerance = get_tolerance( setup, setup->da_subdev, 1.0 );
-       return generic_cal_by_range( setup, &layout );
-}
-
-static int adc_offset_4020( unsigned int channel )
-{
-       return channel;
-}
-static int adc_gain_4020( unsigned int channel )
-{
-       return 4 + channel;
-}
-
-static int cal_cb_pci_4020( calibration_setup_t *setup )
-{
-       generic_layout_t layout;
-
-       init_generic_layout( &layout );
-       layout.adc_offset = adc_offset_4020;
-       layout.adc_gain = adc_gain_4020;
-       layout.adc_high_observable = ai_high_observable_index_4020;
-       layout.adc_ground_observable = ai_low_observable_index_4020;
-       layout.adc_fractional_tolerance = get_tolerance( setup, setup->ad_subdev, 1.0 );
-       return generic_cal_by_channel_and_range( setup, &layout );
-}
-
-static int init_observables_unknown( calibration_setup_t *setup )
-{
-       comedi_insn tmpl;
-       observable *o;
-       int retval, num_ranges, i;
-       enum
-       {
-               CAL_SRC_GROUND = 0,
-       };
-       static const int num_cal_sources = 16;
-       static const int range = 0;
-
-       memset( &tmpl, 0, sizeof(tmpl) );
-       tmpl.insn = INSN_READ;
-       tmpl.n = 1;
-       tmpl.subdev = setup->ad_subdev;
-
-       setup->n_observables = 0;
-
-       num_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       if( num_ranges < 0 ) 
-       {
-               fprintf(stderr, "%s: failed to get number of ai ranges\n", __FUNCTION__);
-               return -1;
-       }
-       for( i = 0; i < num_cal_sources; i++ )
-       {
-               o = setup->observables + i;
-               o->reference_source = i;
-               assert( o->name == NULL );
-               asprintf( &o->name, "calibration source %i, range %i, ground referenced",
-                       o->reference_source, range);
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK( 0, range, AREF_GROUND) | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->target = 0.0;
-               setup->n_observables++;
-       }
-       for(i = 0; i < 16; ++i)
-       {
-               int eeprom_channel = 0x30 + i;
-               float voltage;
-               retval = cb_actual_source_voltage(setup->dev, setup->eeprom_subdev, eeprom_channel, &voltage);
-               if(retval == 0)
-                       printf("eeprom ch 0x%x gives calibration source of %gV\n", eeprom_channel, voltage);
-               else
-                       printf("cb_actual_source_voltage returned %i\n", retval);
-       }
-       return 0;
-}
-
-/* We were unable to read the onboard calibration reference voltages on the 6052, so we'll just
- * load caldac values from eeprom until the problem is resolved somehow. */
-
-static int setup_cb_pci_6052( calibration_setup_t *setup )
-{
-       if( setup->caldac_subdev < 0 )
-       {
-               fprintf( stderr, "no caldac subdevice found\n");
-               return -1;
-       }
-       setup->do_cal = &cal_cb_pci_6052;
-       setup_caldacs(setup, setup->caldac_subdev);
-
-       return 0;
-}
-
-
-/* load analog input caldacs from eeprom values (depend on range used) */
-static void grab_ai_calibration_cb_pci_6052(calibration_setup_t *setup, unsigned int range)
-{
-       comedi_calibration_setting_t *current_cal;
-       enum source_eeprom_addr
-       {
-               EEPROM_5V_CHAN = 0x30,
-               EEPROM_3500mV_CHAN = 0x32,
-               EEPROM_1750mV_CHAN = 0x34,
-               EEPROM_875mV_CHAN = 0x36,
-               EEPROM_8600uV_CHAN = 0x38,
-       };
-/*     According to Measurement Computing the adc eeprom channels are:
-ADC Calibration values
-50      BIP10V offset
-51      BIP10V gain
-52      BIP5V offset
-53      BIP5V gain
-54      BIP2.5V offset
-55      BIP2.5V gain
-56      BIP1V offset
-57      BIP1V gain
-58      BIP0.5V offset
-59      BIP0.5V gain
-5A      BIP0.25V offset
-5B      BIP0.25V gain
-5C      BIP0.1V offset
-5D      BIP0.1V gain
-5E      BIP50mV offset
-5F      BIP50mV gain
-60      UNI10V offset
-61      UNI10V gain
-62      UNI5V offset
-63      UNI5V gain
-64      UNI2.5V offset
-65      UNI2.5V gain
-66      UNI1V offset
-67      UNI1V gain
-68      UNI0.5V offset
-69      UNI0.5V gain
-6A      UNI0.25V offset
-6B      UNI0.25V gain
-6C      UNI0.1V offset
-6D      UNI0.1V gain
-*/
-       int offset_eeprom_channel;
-       int gain_eeprom_channel;
-       int value;
-       const double epsilon = 0.001;
-       comedi_range *range_ptr = comedi_get_range(setup->dev, setup->ad_subdev, 0, range);
-       if(range_ptr == NULL)
-       {
-               fprintf(stderr, "%s: comedi_get_range returned NULL\n", __FUNCTION__);
-               abort();
-       }
-       if(is_unipolar(setup->dev, setup->ad_subdev, 0, range) == 0)
-       {
-               if(fabs(10. - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x50;
-                       gain_eeprom_channel = 0x51;
-               }else if(fabs(5. - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x52;
-                       gain_eeprom_channel = 0x53;
-               }else if(fabs(2.5 - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x54;
-                       gain_eeprom_channel = 0x55;
-               }else if(fabs(1. - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x56;
-                       gain_eeprom_channel = 0x57;
-               }else if(fabs(0.5 - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x58;
-                       gain_eeprom_channel = 0x59;
-               }else if(fabs(0.25 - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x5a;
-                       gain_eeprom_channel = 0x5b;
-               }else if(fabs(0.1 - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x5c;
-                       gain_eeprom_channel = 0x5d;
-               }else if(fabs(0.5 - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x5e;
-                       gain_eeprom_channel = 0x5f;
-               }else
-               {
-                       fprintf(stderr, "%s: logic error, failed to determine eeprom channel for range min=%g, max=%g\n",
-                               __FUNCTION__, range_ptr->min, range_ptr->max);
-                       abort();
-               }
-       }else
-       {
-               if(fabs(10. - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x60;
-                       gain_eeprom_channel = 0x61;
-               }else if(fabs(5. - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x62;
-                       gain_eeprom_channel = 0x63;
-               }else if(fabs(2.5 - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x64;
-                       gain_eeprom_channel = 0x65;
-               }else if(fabs(1. - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x66;
-                       gain_eeprom_channel = 0x67;
-               }else if(fabs(0.5 - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x68;
-                       gain_eeprom_channel = 0x69;
-               }else if(fabs(0.25 - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x6a;
-                       gain_eeprom_channel = 0x6b;
-               }else if(fabs(0.1 - range_ptr->max) < epsilon)
-               {
-                       offset_eeprom_channel = 0x6c;
-                       gain_eeprom_channel = 0x6d;
-               }else
-               {
-                       fprintf(stderr, "%s: logic error, failed to determine eeprom channel for range min=%g, max=%g\n",
-                               __FUNCTION__, range_ptr->min, range_ptr->max);
-                       abort();
-               }
-       }
-       current_cal = sc_alloc_calibration_setting(setup);
-
-       /* load offset */
-       value = read_eeprom(setup, offset_eeprom_channel);
-       if(value < 0)
-       {
-               fprintf(stderr, "%s: line %i: read_eeprom() returned error\n", __FUNCTION__, __LINE__);
-               abort();
-       }
-       update_caldac(setup, ADC_OFFSET_6052, value);
-       sc_push_caldac(current_cal, setup->caldacs[ADC_OFFSET_6052]);
-
-       /* load gain */
-       value = read_eeprom(setup, gain_eeprom_channel);
-       if(value < 0)
-       {
-               fprintf(stderr, "%s: line %i: read_eeprom() returned error\n", __FUNCTION__, __LINE__);
-               abort();
-       }
-       update_caldac(setup, ADC_GAIN_6052, value);
-       sc_push_caldac(current_cal, setup->caldacs[ADC_GAIN_6052]);
-
-       current_cal->subdevice = setup->ad_subdev;
-       sc_push_channel(current_cal, SC_ALL_CHANNELS);
-       sc_push_range(current_cal, range);
-       sc_push_aref(current_cal, SC_ALL_AREFS);
-
-       DPRINT( 0, "loaded adc range %i calibration from eeprom\n", range );
-}
-
-static int dac_gain_coarse_6052( unsigned int channel )
-{
-       if( channel ) return DAC1_GAIN_COARSE_6052;
-       else return DAC0_GAIN_COARSE_6052;
-}
-static int dac_gain_fine_6052( unsigned int channel )
-{
-       if( channel ) return DAC1_GAIN_FINE_6052;
-       else return DAC0_GAIN_FINE_6052;
-}
-static int dac_offset_coarse_6052( unsigned int channel )
-{
-       if( channel ) return DAC1_OFFSET_COARSE_6052;
-       else return DAC0_OFFSET_COARSE_6052;
-}
-static int dac_offset_fine_6052( unsigned int channel )
-{
-       if( channel ) return DAC1_OFFSET_FINE_6052;
-       else return DAC0_OFFSET_FINE_6052;
-}
-
-/* load analog output caldacs from eeprom values (depend on range used) */
-static void grab_ao_calibration_cb_pci_6052(calibration_setup_t *setup,
-       unsigned int channel, unsigned int range)
-{
-       comedi_calibration_setting_t *current_cal;
-       int value;
-       int gain_eeprom_chan;
-       int offset_eeprom_chan;
-/* According to Measurement Computing the dac eeprom channels are:
-DAC Calibration values
-70      DAC0 BIP10V coarse offset       DAC0 BIP10V fine offset
-71      DAC0 BIP10V coarse gain DAC0 BIP10V fine gain
-72      DAC0 UNI10V coarse offset       DAC0 UNI10V fine offset
-73      DAC0 UNI10V coarse gain DAC0 UNI10V fine gain
-74      DAC1 BIP10V coarse offset       DAC1 BIP10V fine offset
-75      DAC1 BIP10V coarse gain DAC1 BIP10V fine gain
-76      DAC1 UNI10V coarse offset       DAC1 UNI10V fine offset
-77      DAC1 UNI10V coarse gain DAC1 UNI10V fine gain
-*/
-       current_cal = sc_alloc_calibration_setting(setup);
-
-       if(is_unipolar(setup->dev, setup->da_subdev, channel, range))
-       {
-               switch(channel)
-               {
-               case 0:
-                       offset_eeprom_chan = 0x72;
-                       gain_eeprom_chan = 0x73;
-                       break;
-               case 1:
-                       offset_eeprom_chan = 0x76;
-                       gain_eeprom_chan = 0x77;
-                       break;
-               default:
-                       fprintf(stderr, "%s: line %i: logic error\n", __FUNCTION__, __LINE__);
-                       abort();
-                       break;
-               }
-       }else
-       {
-               switch(channel)
-               {
-               case 0:
-                       offset_eeprom_chan = 0x70;
-                       gain_eeprom_chan = 0x71;
-                       break;
-               case 1:
-                       offset_eeprom_chan = 0x74;
-                       gain_eeprom_chan = 0x75;
-                       break;
-               default:
-                       fprintf(stderr, "%s: line %i: logic error\n", __FUNCTION__, __LINE__);
-                       abort();
-                       break;
-               }
-       }
-
-       /* load offset */
-       value = read_eeprom(setup, offset_eeprom_chan);
-       if(value < 0)
-       {
-               fprintf(stderr, "%s: line %i: read_eeprom() returned error\n", __FUNCTION__, __LINE__);
-               abort();
-       }
-       update_caldac(setup, dac_offset_coarse_6052(channel), (value >> 8) & 0xff);
-       sc_push_caldac(current_cal, setup->caldacs[dac_offset_coarse_6052(channel)]);
-       update_caldac(setup, dac_offset_fine_6052(channel), value & 0xff);
-       sc_push_caldac(current_cal, setup->caldacs[dac_offset_fine_6052(channel)]);
-
-       // load gain calibration
-       value = read_eeprom(setup, gain_eeprom_chan);
-       if(value < 0)
-       {
-               fprintf(stderr, "%s: line %i: read_eeprom() returned error\n", __FUNCTION__, __LINE__);
-               abort();
-       }
-       update_caldac(setup, dac_gain_coarse_6052(channel), (value >> 8) & 0xff);
-       sc_push_caldac(current_cal, setup->caldacs[dac_gain_coarse_6052(channel)]);
-       update_caldac(setup, dac_gain_fine_6052(channel), value & 0xff);
-       sc_push_caldac(current_cal, setup->caldacs[dac_gain_fine_6052(channel)]);
-
-       current_cal->subdevice = setup->da_subdev;
-       sc_push_channel(current_cal, channel);
-       sc_push_range(current_cal, range);
-       sc_push_aref(current_cal, SC_ALL_AREFS);
-
-       DPRINT( 0, "loaded dac channel %i range %i calibration from eeprom\n",
-               channel, range );
-}
-
-
-static int cal_cb_pci_6052( calibration_setup_t *setup )
-{
-       int range, channel, num_ai_ranges, num_ao_ranges;
-
-       num_ai_ranges = comedi_get_n_ranges(setup->dev, setup->ad_subdev, 0);
-       if(num_ai_ranges < 0)
-       {
-               fprintf(stderr, "%s: line %i: comedi_get_n_ranges() returned error\n", __FUNCTION__, __LINE__);
-               abort();
-       }
-       num_ao_ranges = comedi_get_n_ranges(setup->dev, setup->da_subdev, 0);
-       if(num_ao_ranges < 0)
-       {
-               fprintf(stderr, "%s: line %i: comedi_get_n_ranges() returned error\n", __FUNCTION__, __LINE__);
-               abort();
-       }
-
-       for(range = 0; range < num_ai_ranges; range++)
-               grab_ai_calibration_cb_pci_6052(setup, range);
-
-       if(setup->da_subdev >= 0 && setup->do_output)
-       {
-               for(channel = 0; channel < 2; channel++)
-               {
-                       for(range = 0; range < num_ao_ranges; range++)
-                               grab_ao_calibration_cb_pci_6052(setup, channel, range);
-               }
-       }
-
-       return write_calibration_file( setup );
-}
-
diff --git a/comedi_calibrate/comedi_calibrate.c b/comedi_calibrate/comedi_calibrate.c
deleted file mode 100644 (file)
index cf44471..0000000
+++ /dev/null
@@ -1,1642 +0,0 @@
-/*
-   A little auto-calibration utility, for boards
-   that support it.
-
-   copyright (C) 1999,2000,2001,2002 by David Schleef
-   copyright (C) 2003 by Frank Mori Hess
-
- */
-
- /***************************************************************************
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU Lesser General Public License as        *
- *   published by                                                          *
- *   the Free Software Foundation; either version 2.1 of the License, or   *
- *   (at your option) any later version.                                   *
- *                                                                         *
- ***************************************************************************/
-
-#define _GNU_SOURCE
-
-#include <stdio.h>
-#include "comedilib.h"
-#include <fcntl.h>
-#include <unistd.h>
-#include <errno.h>
-#include <getopt.h>
-#include <ctype.h>
-#include <math.h>
-#include <stdlib.h>
-#include <string.h>
-#include <assert.h>
-
-#include "calib.h"
-
-/* global variables */
-int verbose = 0;
-
-struct board_struct{
-       char *name;
-       char *id;
-       int (*init_setup)( calibration_setup_t *setup, const char *device_name );
-};
-
-struct board_struct drivers[] = {
-       { "ni_pcimio",  ni_id,  ni_setup },
-       { "ni_atmio",   ni_id,  ni_setup },
-       { "ni_mio_cs",  ni_id,  ni_setup },
-       { "cb_pcidas",  cb_id,  cb_setup },
-       { "cb_pcidas64",        cb64_id,        cb64_setup },
-       { "ni_labpc", ni_labpc_id,      ni_labpc_setup },
-};
-#define n_drivers (sizeof(drivers)/sizeof(drivers[0]))
-
-void help(void)
-{
-       printf("comedi_calibrate [options] - autocalibrates a Comedi device\n");
-       printf("  --verbose, -v  \n");
-       printf("  --quiet, -q  \n");
-       printf("  --help, -h  \n");
-       printf("  --file, -f [/dev/comediN] \n");
-       printf("  --save-file, -S [filepath] \n");
-       printf("  --driver-name [driver]  \n");
-       printf("  --device-name [device]  \n");
-       printf("  --[no-]reset  \n");
-       printf("  --[no-]calibrate  \n");
-       printf("  --[no-]dump  \n");
-       printf("  --[no-]results  \n");
-       printf("  --[no-]output  \n");
-}
-
-typedef struct
-{
-       int verbose;
-       char *file_path;
-       char *save_file_path;
-       char *driver_name;
-       char *device_name;
-       int do_reset;
-       int do_dump;
-       int do_calibrate;
-       int do_results;
-       int do_output;
-       unsigned int subdevice;
-       unsigned int channel;
-       unsigned int range;
-       unsigned int aref;
-} parsed_options_t;
-
-static void parse_options( int argc, char *argv[], parsed_options_t *settings )
-{
-       int c, index;
-
-       struct option options[] = {
-               { "verbose", 0, 0, 'v' },
-               { "quiet", 0, 0, 'q' },
-               { "file", 1, 0, 'f' },
-               { "save-file", 1, 0, 'S' },
-               { "help", 0, 0, 'h' },
-               { "driver-name", 1, 0, 0x1000 },
-               { "device-name", 1, 0, 0x1001 },
-               { "reset", 0, &settings->do_reset, 1 },
-               { "no-reset", 0, &settings->do_reset, 0 },
-               { "calibrate", 0, &settings->do_calibrate, 1 },
-               { "no-calibrate", 0, &settings->do_calibrate, 0 },
-               { "dump", 0, &settings->do_dump, 1 },
-               { "no-dump", 0, &settings->do_dump, 0 },
-               { "results", 0, &settings->do_results, 1 },
-               { "no-results", 0, &settings->do_results, 0 },
-               { "output", 0, &settings->do_output, 1 },
-               { "no-output", 0, &settings->do_output, 0 },
-               { "subdevice", 1, 0, 's' },
-               { "channel", 1, 0, 'c' },
-               { "range", 1, 0, 'r' },
-               { "aref", 1, 0, 'a' },
-               { 0 },
-       };
-
-       while (1) {
-               c = getopt_long(argc, argv, "f:S:vqs:c:r:a:", options, &index);
-               if (c == -1)break;
-               switch (c) {
-               case 0:
-                       continue;
-               case 'h':
-                       help();
-                       exit(0);
-                       break;
-               case 'f':
-                       settings->file_path = optarg;
-                       break;
-               case 'S':
-                       settings->save_file_path = optarg;
-                       break;
-               case 'v':
-                       settings->verbose++;
-                       break;
-               case 'q':
-                       settings->verbose--;
-                       break;
-               case 0x1000:
-                       settings->driver_name = optarg;
-                       break;
-               case 0x1001:
-                       settings->device_name = optarg;
-                       break;
-               case 's':
-                       settings->subdevice = strtoul( optarg, NULL, 0 );
-                       break;
-               case 'c':
-                       settings->channel = strtoul( optarg, NULL, 0 );
-                       break;
-               case 'r':
-                       settings->range = strtoul( optarg, NULL, 0 );
-                       break;
-               case 'a':
-                       settings->aref = strtoul( optarg, NULL, 0 );
-                       break;
-               default:
-                       help();
-                       exit(1);
-               }
-       }
-}
-
-int main(int argc, char *argv[])
-{
-       int i;
-       struct board_struct *this_board;
-       int device_status = STATUS_UNKNOWN;
-       calibration_setup_t setup;
-       int retval;
-       parsed_options_t options;
-
-       memset( &setup, 0, sizeof( setup ) );
-       setup.sv_settling_time_ns = 99999;
-       setup.sv_order = 10;
-       
-       memset( &options, 0, sizeof( options ) );
-       options.do_dump = 0;
-       options.do_reset = 0;
-       options.do_calibrate = -1;
-       options.do_results = 0;
-       options.do_output = 1;
-       options.file_path = "/dev/comedi0";
-       parse_options( argc, argv, &options );
-       verbose = options.verbose;
-       
-       setup.dev = comedi_open( options.file_path );
-       if( setup.dev == NULL ) {
-               fprintf( stderr, "comedi_open() failed, with device file name: %s\n",
-                       options.file_path );
-               comedi_perror("comedi_open");
-               exit(0);
-       }
-
-       if( options.save_file_path == NULL )
-               options.save_file_path = comedi_get_default_calibration_path( setup.dev );
-       if(!options.driver_name)
-               options.driver_name=comedi_get_driver_name( setup.dev );
-       if(!options.device_name)
-               options.device_name=comedi_get_board_name( setup.dev );
-
-       setup.ad_subdev=comedi_find_subdevice_by_type( setup.dev,COMEDI_SUBD_AI,0);
-       setup.da_subdev=comedi_find_subdevice_by_type( setup.dev,COMEDI_SUBD_AO,0);
-       setup.caldac_subdev=comedi_find_subdevice_by_type( setup.dev,COMEDI_SUBD_CALIB,0);
-       setup.eeprom_subdev=comedi_find_subdevice_by_type( setup.dev,COMEDI_SUBD_MEMORY,0);
-
-       for(i=0;i<n_drivers;i++){
-               if(!strcmp(drivers[i].name,options.driver_name)){
-                       this_board = drivers+i;
-                       goto ok;
-               }
-       }
-       fprintf(stderr, "Driver %s unknown\n", options.driver_name);
-       return 1;
-
-ok:
-
-       retval = this_board->init_setup( &setup, options.device_name );
-       if( retval < 0 ){
-               fprintf(stderr, "init_setup() failed for %s\n", options.device_name );
-               return 1;
-       }
-       device_status = setup.status;
-
-       if(device_status<STATUS_DONE){
-               printf("Warning: device may not be not fully calibrated due to "
-                       "insufficient information.\n"
-                       "Please file a bug report at https://bugs.comedi.org/ and attach this output.\n"
-                       "This output will also allow comedi_calibrate to execute more\n"
-                       "quickly in the future.\n");
-               if(verbose<1){
-                       verbose=1;
-                       printf("Forcing option: --verbose\n");
-               }
-               if(device_status==STATUS_UNKNOWN){
-                       options.do_reset=1;
-                       options.do_dump=1;
-                       options.do_calibrate=0;
-                       options.do_results=0;
-                       printf("Forcing options: --reset --dump --no-calibrate --no-results\n");
-               }
-               if(device_status==STATUS_SOME){
-                       options.do_reset=1;
-                       options.do_dump=1;
-                       options.do_calibrate=1;
-                       options.do_results=1;
-                       printf("Forcing options: --reset --dump --calibrate --results\n");
-               }
-               if(device_status==STATUS_GUESS){
-                       options.do_reset=1;
-                       options.do_dump=1;
-                       options.do_calibrate=1;
-                       options.do_results=1;
-                       printf("Forcing options: --reset --dump --calibrate --results\n");
-               }
-       }
-       if(verbose>=0){
-               char *s = "$Id$";
-
-               printf("%.*s\n",(int)strlen(s)-2,s+1);
-               printf("Driver name: %s\n", options.driver_name);
-               printf("Device name: %s\n", options.device_name);
-               printf("%.*s\n",(int)strlen(this_board->id)-2,this_board->id+1);
-               printf("Comedi version: %d.%d.%d\n",
-                       (comedi_get_version_code(setup.dev)>>16)&0xff,
-                       (comedi_get_version_code(setup.dev)>>8)&0xff,
-                       (comedi_get_version_code(setup.dev))&0xff);
-       }
-
-       if( options.do_reset == 0 )
-               setup.old_calibration = comedi_parse_calibration_file( options.save_file_path );
-       else
-               setup.old_calibration = NULL;
-       if( options.do_calibrate < 0 )
-       {
-               if( setup.old_calibration ) options.do_calibrate = 0;
-               else options.do_calibrate = 1;
-       }
-       setup.do_output = options.do_output;
-       setup.cal_save_file_path = options.save_file_path;
-
-       if(options.do_dump) observe( &setup );
-       if(options.do_calibrate && setup.do_cal)
-       {
-               setup.new_calibration = malloc( sizeof( comedi_calibration_t ) );
-               assert( setup.new_calibration );
-               memset( setup.new_calibration, 0, sizeof( comedi_calibration_t ) );
-               setup.new_calibration->driver_name = strdup( comedi_get_driver_name( setup.dev ) );
-               assert( setup.new_calibration->driver_name != NULL );
-               setup.new_calibration->board_name = strdup( comedi_get_board_name( setup.dev ) );
-               assert( setup.new_calibration->board_name != NULL );
-               retval = setup.do_cal( &setup );
-               if( retval < 0 )
-               {
-                       fprintf( stderr, "calibration function returned error\n" );
-                       return -1;
-               }
-       }
-       if(options.do_results) observe( &setup );
-
-       if( setup.old_calibration ) comedi_cleanup_calibration( setup.old_calibration );
-       if( setup.new_calibration ) comedi_cleanup_calibration( setup.new_calibration );
-
-       retval = comedi_apply_calibration( setup.dev, options.subdevice,
-               options.channel, options.range, options.aref, setup.cal_save_file_path );
-       if( retval < 0 )
-       {
-               DPRINT( 0, "Failed to apply " );
-       }else
-       {
-               DPRINT( 0, "Applied " );
-       }
-       DPRINT( 0, "calibration for subdevice %i, channel %i, range %i, aref %i\n",
-               options.subdevice, options.channel, options.range, options.aref );
-       comedi_close(setup.dev);
-
-       return retval;
-}
-
-void set_target( calibration_setup_t *setup, int obs, double target)
-{
-       comedi_range *range;
-       lsampl_t maxdata, data;
-
-       comedi_set_global_oor_behavior( COMEDI_OOR_NUMBER );
-
-       range = comedi_get_range(setup->dev,
-               setup->observables[obs].preobserve_insn.subdev,
-               CR_CHAN( setup->observables[obs].preobserve_insn.chanspec ),
-               CR_RANGE( setup->observables[obs].preobserve_insn.chanspec ));
-       assert( range );
-       maxdata = comedi_get_maxdata( setup->dev,
-               setup->observables[obs].preobserve_insn.subdev,
-               CR_CHAN(setup->observables[obs].preobserve_insn.chanspec));
-       assert( maxdata > 0 );
-       data = comedi_from_phys(target,range,maxdata);
-
-       setup->observables[obs].preobserve_data[0] = data;
-       setup->observables[obs].target = comedi_to_phys(data,range,maxdata);
-}
-
-static void apply_appropriate_cal( calibration_setup_t *setup, comedi_insn insn )
-{
-       int retval = 0;
-
-       if( setup->new_calibration )
-       {
-               retval = comedi_apply_parsed_calibration( setup->dev, insn.subdev,
-                       CR_CHAN( insn.chanspec ), CR_RANGE( insn.chanspec ),
-                       CR_AREF( insn.chanspec ), setup->new_calibration );
-       }else if( setup->old_calibration )
-       {
-               retval = comedi_apply_parsed_calibration( setup->dev, insn.subdev,
-                       CR_CHAN( insn.chanspec ), CR_RANGE( insn.chanspec ),
-                       CR_AREF( insn.chanspec ), setup->old_calibration );
-       }else
-       {
-               reset_caldacs( setup );
-               return;
-       }
-       if( retval < 0 )
-               DPRINT( 1, "failed to apply ");
-       else
-               DPRINT( 1, "applied ");
-       DPRINT( 1, "calibration for subdev %i, channel %i, range %i, aref %i\n", insn.subdev,
-               CR_CHAN( insn.chanspec ), CR_RANGE( insn.chanspec ),
-               CR_AREF( insn.chanspec ) );
-}
-
-void observe( calibration_setup_t *setup )
-{
-       int i;
-       observable *obs;
-
-       for( i = 0; i < setup->n_observables; i++){
-               obs = &setup->observables[ i ];
-               if( obs->observe_insn.n == 0 ) continue;
-               preobserve( setup, i);
-               DPRINT(0,"%s\n", setup->observables[i].name);
-               if( obs->preobserve_insn.n != 0){
-                       apply_appropriate_cal( setup, obs->preobserve_insn );
-               }
-               apply_appropriate_cal( setup, obs->observe_insn );
-               measure_observable( setup, i);
-               if(verbose>=1){
-                       observable_dependence( setup, i);
-               }
-       }
-}
-
-int preobserve( calibration_setup_t *setup, int obs)
-{
-       int retval;
-       comedi_insn reference_source_config;
-       lsampl_t ref_data[ 2 ];
-
-       // setup reference source
-       if(setup->observables[obs].reference_source >= 0)
-       {
-               memset( &reference_source_config, 0, sizeof(reference_source_config) );
-               reference_source_config.insn = INSN_CONFIG;
-               reference_source_config.n = 2;
-               reference_source_config.subdev = setup->ad_subdev;
-               reference_source_config.data = ref_data;
-               reference_source_config.data[ 0 ] = INSN_CONFIG_ALT_SOURCE;
-               reference_source_config.data[ 1 ] = setup->observables[obs].reference_source;
-
-               retval = comedi_do_insn( setup->dev, &reference_source_config );
-               /* ignore errors for now since older ni driver doesn't
-               * support reference config insn */
-               if( retval < 0 )
-                       perror("preobserve() ignoring reference config error" );
-       }
-       retval = 0;
-
-       if( setup->observables[obs].preobserve_insn.n != 0){
-               retval = comedi_do_insn( setup->dev, &setup->observables[obs].preobserve_insn);
-       }
-       if( retval < 0 )
-               perror("preobserve()");
-
-       return retval;
-}
-
-void measure_observable( calibration_setup_t *setup, int obs)
-{
-       char s[32];
-       int n;
-       new_sv_t sv;
-
-       my_sv_init(&sv, setup,
-               setup->observables[obs].observe_insn.subdev,
-               setup->observables[obs].observe_insn.chanspec);
-       n = new_sv_measure(setup->dev, &sv);
-
-       sci_sprint_alt(s,sv.average,sv.error);
-       DPRINT(0,"reading %s, target %g\n",s, setup->observables[obs].target);
-       assert( isnan( setup->observables[obs].target) == 0 );
-}
-
-void observable_dependence(calibration_setup_t *setup, int obs)
-{
-       int i;
-       linear_fit_t l;
-
-       for( i = 0; i < setup->n_caldacs; i++){
-               check_gain_chan_x( setup, &l,
-                       setup->observables[obs].observe_insn.chanspec, i);
-       }
-
-}
-
-
-void postgain_cal( calibration_setup_t *setup, int obs1, int obs2, int dac)
-{
-       double offset1,offset2;
-       linear_fit_t l;
-       double slope1,slope2;
-       double a;
-       double gain;
-       comedi_range *range1,*range2;
-
-       DPRINT(0,"postgain: %s; %s\n", setup->observables[obs1].name,
-               setup->observables[obs2].name);
-       preobserve(setup, obs1);
-       check_gain_chan_x( setup, &l, setup->observables[obs1].observe_insn.chanspec, dac);
-       offset1=linear_fit_func_y(&l, setup->caldacs[dac].current);
-       DPRINT(2,"obs1: [%d] offset %g\n",obs1,offset1);
-       range1 = comedi_get_range(setup->dev, setup->observables[obs1].observe_insn.subdev,
-               CR_CHAN( setup->observables[obs1].observe_insn.chanspec),
-               CR_RANGE( setup->observables[obs1].observe_insn.chanspec));
-       slope1=l.slope;
-
-       preobserve( setup, obs2);
-       check_gain_chan_x( setup, &l, setup->observables[obs2].observe_insn.chanspec,dac);
-       offset2=linear_fit_func_y(&l, setup->caldacs[dac].current);
-       DPRINT(2,"obs2: [%d] offset %g\n",obs2,offset2);
-       range2 = comedi_get_range(setup->dev, setup->observables[obs2].observe_insn.subdev,
-               CR_CHAN( setup->observables[obs2].observe_insn.chanspec),
-               CR_RANGE( setup->observables[obs2].observe_insn.chanspec));
-       slope2=l.slope;
-
-       gain = (range1->max-range1->min)/(range2->max-range2->min);
-       DPRINT(4,"range1 %g range2 %g\n", range1->max-range1->min,
-               range2->max-range2->min);
-       DPRINT(3,"gain: %g\n",gain);
-
-       DPRINT(3,"difference: %g\n",offset2-offset1);
-
-       a = (offset1-offset2)/(slope1-slope2);
-       a=setup->caldacs[dac].current-a;
-
-       update_caldac( setup, dac, rint(a) );
-       usleep(caldac_settle_usec);
-
-       DPRINT(0,"caldac[%d] set to %g (%g)\n",dac,rint(a),a);
-
-       if(verbose>=2){
-               preobserve( setup, obs1);
-               measure_observable( setup, obs1);
-               preobserve( setup, obs2);
-               measure_observable( setup, obs2);
-       }
-}
-
-void cal1( calibration_setup_t *setup, int obs, int dac)
-{
-       linear_fit_t l;
-       double a;
-
-       DPRINT(0,"linear: %s\n", setup->observables[obs].name);
-       preobserve( setup, obs);
-       check_gain_chan_x( setup, &l, setup->observables[obs].observe_insn.chanspec,dac);
-       a=linear_fit_func_x(&l, setup->observables[obs].target);
-
-       update_caldac( setup, dac, rint(a) );
-       usleep(caldac_settle_usec);
-
-       DPRINT(0,"caldac[%d] set to %g (%g)\n",dac,rint(a),a);
-       if(verbose>=3){
-               measure_observable( setup, obs);
-       }
-}
-
-void cal1_fine( calibration_setup_t *setup, int obs, int dac )
-{
-       linear_fit_t l;
-       double a;
-
-       DPRINT(0,"linear fine: %s\n", setup->observables[obs].name);
-       preobserve( setup, obs);
-       check_gain_chan_fine( setup, &l, setup->observables[obs].observe_insn.chanspec,dac);
-       a=linear_fit_func_x(&l,setup->observables[obs].target);
-
-       update_caldac( setup, dac, rint(a) );
-       usleep(caldac_settle_usec);
-
-       DPRINT(0,"caldac[%d] set to %g (%g)\n",dac,rint(a),a);
-       if(verbose>=3){
-               measure_observable( setup, obs);
-       }
-}
-
-void peg_binary( calibration_setup_t *setup, int obs, int dac, int maximize )
-{
-       int x0, x1, x;
-       double y0, y1;
-       new_sv_t sv;
-       unsigned int chanspec = setup->observables[obs].observe_insn.chanspec;
-       int polarity;
-
-       DPRINT(0,"binary peg: %s\n", setup->observables[obs].name);
-       preobserve( setup, obs);
-
-       comedi_set_global_oor_behavior( COMEDI_OOR_NUMBER );
-
-       my_sv_init(&sv, setup, setup->ad_subdev, chanspec);
-
-       x0 = setup->caldacs[dac].maxdata;
-       update_caldac( setup, dac, x0 );
-       usleep(caldac_settle_usec);
-       new_sv_measure( setup->dev, &sv);
-       y0 = sv.average;
-
-       x1 = 0;
-       update_caldac( setup, dac, x1 );
-       usleep(caldac_settle_usec);
-       new_sv_measure( setup->dev, &sv);
-       y1 = sv.average;
-
-       if( (y0 - y1) > 0.0 ) polarity = 1;
-       else polarity = -1;
-
-       if( maximize )
-       {
-               if( polarity > 0 ) x = x0;
-               else x = x1;
-       }else
-       {
-               if( polarity > 0 ) x = x1;
-               else x = x0;
-       }
-       update_caldac( setup, dac, x );
-       DPRINT(0,"caldac[%d] set to %d\n",dac,x);
-       if(verbose>=3){
-               measure_observable( setup, obs);
-       }
-}
-
-void cal_binary( calibration_setup_t *setup, int obs, int dac)
-{
-       int x0, x1, x2, x;
-       unsigned int bit;
-       double y0, y1, y2;
-       new_sv_t sv;
-       double target = setup->observables[obs].target;
-       unsigned int chanspec = setup->observables[obs].observe_insn.chanspec;
-       int polarity;
-
-       DPRINT(0,"binary: %s\n", setup->observables[obs].name);
-       preobserve( setup, obs);
-
-       comedi_set_global_oor_behavior( COMEDI_OOR_NUMBER );
-
-       my_sv_init(&sv, setup, setup->ad_subdev, chanspec);
-
-       x0 = setup->caldacs[dac].maxdata;
-       update_caldac( setup, dac, x0 );
-       usleep(caldac_settle_usec);
-       new_sv_measure( setup->dev, &sv);
-       y0 = sv.average;
-
-       x1 = x2 = 0;
-       update_caldac( setup, dac, x1 );
-       usleep(caldac_settle_usec);
-       new_sv_measure( setup->dev, &sv);
-       y1 = y2 = sv.average;
-
-       if( (y0 - y1) > 0.0 ) polarity = 1;
-       else polarity = -1;
-
-       bit = 1;
-       while( ( bit << 1 ) < setup->caldacs[dac].maxdata )
-               bit <<= 1;
-       for( ; bit; bit >>= 1 ){
-               x2 = x1 | bit;
-
-               update_caldac( setup, dac, x2 );
-               usleep(caldac_settle_usec);
-               new_sv_measure( setup->dev, &sv);
-               y2 = sv.average;
-               DPRINT(3,"trying %d, result %g, target %g\n",x2,y2,target);
-
-               if( (y2 - target) * polarity < 0.0 ){
-                       x1 = x2;
-                       y1 = y2;
-               }
-
-               if(verbose>=3){
-                       measure_observable( setup, obs);
-               }
-       }
-
-       // get that least signficant bit right
-       if( fabs( y1 - target ) < fabs( y2 - target ) )
-               x = x1;
-       else x = x2;
-
-       update_caldac( setup, dac, x );
-       DPRINT(0,"caldac[%d] set to %d\n",dac,x);
-       if( x >= setup->caldacs[dac].maxdata || x <= 0 )
-               DPRINT(0,"WARNING: caldac[%d] pegged!\n", dac );
-       if(verbose>=3){
-               measure_observable( setup, obs);
-       }
-}
-
-void cal_postgain_binary( calibration_setup_t *setup, int obs1, int obs2, int dac)
-{
-       cal_relative_binary( setup, obs1, obs2, dac );
-}
-
-void cal_relative_binary( calibration_setup_t *setup, int obs1, int obs2, int dac)
-{
-       int x0, x1, x2, x, polarity;
-       double y0, y1, y2;
-       new_sv_t sv1, sv2;
-       double target = setup->observables[obs1].target - setup->observables[obs2].target;
-       unsigned int chanspec1 = setup->observables[obs1].observe_insn.chanspec;
-       unsigned int chanspec2 = setup->observables[obs2].observe_insn.chanspec;
-       unsigned int bit;
-
-       DPRINT(0,"relative binary: %s, %s\n", setup->observables[obs1].name,
-               setup->observables[obs2].name);
-
-       comedi_set_global_oor_behavior( COMEDI_OOR_NUMBER );
-
-       x0 = setup->caldacs[dac].maxdata;
-       update_caldac( setup, dac, x0 );
-       usleep(caldac_settle_usec);
-       preobserve( setup, obs1);
-       my_sv_init(&sv1, setup, setup->ad_subdev,chanspec1);
-       new_sv_measure( setup->dev, &sv1);
-
-       preobserve( setup, obs2);
-       my_sv_init(&sv2, setup, setup->ad_subdev,chanspec2);
-       new_sv_measure( setup->dev, &sv2);
-       y0 = sv1.average - sv2.average;
-
-       x1 = x2 = 0;
-       update_caldac( setup, dac, x1 );
-       usleep(caldac_settle_usec);
-       preobserve( setup, obs1);
-       new_sv_measure( setup->dev, &sv1);
-
-       preobserve( setup, obs2);
-       new_sv_measure( setup->dev, &sv2);
-       y1 = y2 = sv1.average - sv2.average;
-
-       if( (y0 - y1) > 0.0 ) polarity = 1;
-       else polarity = -1;
-
-       bit = 1;
-       while( ( bit << 1 ) < setup->caldacs[dac].maxdata )
-               bit <<= 1;
-       for( ; bit; bit >>= 1 )
-       {
-               x2 = x1 | bit;
-
-               update_caldac( setup, dac, x2 );
-               usleep(caldac_settle_usec);
-
-               preobserve( setup, obs1);
-               new_sv_measure( setup->dev, &sv1);
-
-               preobserve( setup, obs2);
-               new_sv_measure( setup->dev, &sv2);
-               y2 = sv1.average - sv2.average;
-
-               DPRINT(3,"trying %d, result %g, target %g\n",x2,y2,target);
-
-               if( (y2 - target) * polarity < 0.0 ){
-                       x1 = x2;
-                       y1 = y2;
-               }
-
-               if(verbose>=3){
-                       preobserve( setup, obs1);
-                       measure_observable( setup, obs1);
-                       preobserve( setup, obs2);
-                       measure_observable( setup, obs2);
-               }
-       }
-
-       if( fabs( y1 - target ) < fabs( y2 - target ) )
-               x = x1;
-       else
-               x = x2;
-       update_caldac( setup, dac, x );
-       DPRINT(0,"caldac[%d] set to %d\n",dac,x);
-       if( x >= setup->caldacs[dac].maxdata || x <= 0 )
-               DPRINT(0,"WARNING: caldac[%d] pegged!\n", dac );
-       if(verbose>=3){
-               preobserve( setup, obs1);
-               measure_observable( setup, obs1);
-               preobserve( setup, obs2);
-               measure_observable( setup, obs2);
-       }
-}
-
-void cal_linearity_binary( calibration_setup_t *setup, int obs1, int obs2, int obs3, int dac)
-{
-       int x0, x1, x2, x, polarity;
-       double y0, y1, y2;
-       new_sv_t sv1, sv2, sv3;
-       double target = ( setup->observables[obs3].target - setup->observables[obs2].target ) /
-               ( setup->observables[obs2].target - setup->observables[obs1].target );
-       unsigned int chanspec1 = setup->observables[obs1].observe_insn.chanspec;
-       unsigned int chanspec2 = setup->observables[obs2].observe_insn.chanspec;
-       unsigned int chanspec3 = setup->observables[obs3].observe_insn.chanspec;
-       unsigned int bit;
-
-       DPRINT(0,"linearity binary: %s,\n%s,\n%s\n", setup->observables[obs1].name,
-               setup->observables[obs2].name,setup->observables[obs3].name);
-
-       comedi_set_global_oor_behavior( COMEDI_OOR_NUMBER );
-
-       x0 = setup->caldacs[dac].maxdata;
-       update_caldac( setup, dac, x0 );
-       usleep(caldac_settle_usec);
-
-       preobserve( setup, obs1);
-       my_sv_init(&sv1, setup, setup->ad_subdev,chanspec1);
-       new_sv_measure( setup->dev, &sv1);
-
-       preobserve( setup, obs2);
-       my_sv_init(&sv2, setup, setup->ad_subdev,chanspec2);
-       new_sv_measure( setup->dev, &sv2);
-
-       preobserve( setup, obs3);
-       my_sv_init(&sv3, setup, setup->ad_subdev,chanspec3);
-       new_sv_measure( setup->dev, &sv3);
-
-       y0 = ( sv3.average - sv2.average ) / ( sv2.average - sv1.average );
-
-       x1 = x2 = 0;
-       update_caldac( setup, dac, x1 );
-       usleep(caldac_settle_usec);
-
-       preobserve( setup, obs1);
-       new_sv_measure( setup->dev, &sv1);
-
-       preobserve( setup, obs2);
-       new_sv_measure( setup->dev, &sv2);
-
-       preobserve( setup, obs3);
-       new_sv_measure( setup->dev, &sv3);
-
-       y1 = y2 = ( sv3.average - sv2.average ) / ( sv2.average - sv1.average );
-
-       if( (y0 - y1) > 0.0 ) polarity = 1;
-       else polarity = -1;
-
-       bit = 1;
-       while( ( bit << 1 ) < setup->caldacs[dac].maxdata )
-               bit <<= 1;
-       for( ; bit; bit >>= 1 )
-       {
-               x2 = x1 | bit;
-
-               update_caldac( setup, dac, x2 );
-               usleep(caldac_settle_usec);
-
-               preobserve( setup, obs1);
-               new_sv_measure( setup->dev, &sv1);
-
-               preobserve( setup, obs2);
-               new_sv_measure( setup->dev, &sv2);
-
-               preobserve( setup, obs3);
-               new_sv_measure( setup->dev, &sv3);
-
-               y2 = ( sv3.average - sv2.average ) / ( sv2.average - sv1.average );
-
-               DPRINT(3,"trying %d, result %g, target %g\n",x2,y2,target);
-
-               if( (y2 - target) * polarity < 0.0 ){
-                       x1 = x2;
-                       y1 = y2;
-               }
-
-               if(verbose>=3){
-                       preobserve( setup, obs1);
-                       measure_observable( setup, obs1);
-                       preobserve( setup, obs2);
-                       measure_observable( setup, obs2);
-                       preobserve( setup, obs3);
-                       measure_observable( setup, obs3);
-               }
-       }
-
-       if( fabs( y1 - target ) < fabs( y2 - target ) )
-               x = x1;
-       else
-               x = x2;
-       update_caldac( setup, dac, x );
-       DPRINT(0,"caldac[%d] set to %d\n",dac,x);
-       if( x >= setup->caldacs[dac].maxdata || x <= 0 )
-               DPRINT(0,"WARNING: caldac[%d] pegged!\n", dac );
-       if(verbose>=3){
-               preobserve( setup, obs1);
-               measure_observable( setup, obs1);
-               preobserve( setup, obs2);
-               measure_observable( setup, obs2);
-               preobserve( setup, obs3);
-               measure_observable( setup, obs3);
-       }
-}
-
-#if 0
-void chan_cal(int adc,int cdac,int range,double target)
-{
-       linear_fit_t l;
-       double offset;
-       double gain;
-       double a;
-       char s[32];
-
-       check_gain_chan_x(&l,CR_PACK(adc,range,AREF_OTHER),cdac);
-       offset=linear_fit_func_y(&l,caldacs[cdac].current);
-       gain=l.slope;
-
-       a=caldacs[cdac].current+(target-offset)/gain;
-
-       update_caldac( setup, cdac, rint(a));
-
-       read_chan2(s,adc,range);
-       DPRINT(1,"caldac[%d] set to %g, offset=%s\n",cdac,a,s);
-}
-#endif
-
-
-#if 0
-void channel_dependence(int adc,int range)
-{
-       int i;
-       double gain;
-
-       for(i=0;i<n_caldacs;i++){
-               gain=check_gain_chan(adc,range,i);
-       }
-}
-#endif
-
-#if 0
-void caldac_dependence(int caldac)
-{
-       int i;
-       double gain;
-
-       for(i=0;i<8;i++){
-               gain=check_gain_chan(i,0,caldac);
-       }
-}
-#endif
-
-
-void setup_caldacs( calibration_setup_t *setup, int caldac_subdev )
-{
-       int n_chan, i;
-
-       if( caldac_subdev < 0 ){
-               printf("no calibration subdevice\n");
-               return;
-       }
-
-       // XXX check subdevice type is really calibration
-
-       n_chan = comedi_get_n_channels( setup->dev, caldac_subdev );
-       assert(n_chan >= 0);
-       assert(setup->n_caldacs + n_chan < N_CALDACS);
-
-       for(i = 0; i < n_chan; i++){
-               setup->caldacs[ setup->n_caldacs + i ].subdev = caldac_subdev;
-               setup->caldacs[ setup->n_caldacs + i ].chan = i;
-               setup->caldacs[ setup->n_caldacs + i ].maxdata = comedi_get_maxdata(setup->dev, caldac_subdev, i);
-               assert(setup->caldacs[ setup->n_caldacs + i ].maxdata > 0);
-               setup->caldacs[ setup->n_caldacs + i ].current=0;
-       }
-
-       setup->n_caldacs += n_chan;
-}
-
-void reset_caldac( calibration_setup_t *setup, int caldac_index )
-{
-       if( caldac_index < 0 ) return;
-       assert( caldac_index < setup->n_caldacs );
-       update_caldac( setup, caldac_index, setup->caldacs[ caldac_index ].maxdata / 2 );
-}
-
-void reset_caldacs( calibration_setup_t *setup )
-{
-       int i;
-
-       for( i = 0; i < setup->n_caldacs; i++){
-               reset_caldac( setup, i );
-       }
-}
-
-void update_caldac( calibration_setup_t *setup, int caldac_index,
-       int value )
-{
-       int ret;
-       caldac_t *dac;
-
-       if( caldac_index < 0 ) return;
-       if( caldac_index > setup->n_caldacs )
-       {
-               fprintf( stderr, "invalid caldac index\n" );
-               return;
-       }
-       dac = &setup->caldacs[ caldac_index ];
-       dac->current = value;
-       DPRINT(4,"update %d %d %d\n", dac->subdev, dac->chan, dac->current);
-       if( dac->current < 0 ){
-               DPRINT(1,"caldac set out of range (%d<0)\n", dac->current);
-               dac->current = 0;
-       }
-       if( dac->current > dac->maxdata ){
-               DPRINT(1,"caldac set out of range (%d>%d)\n",
-                       dac->current, dac->maxdata);
-               dac->current = dac->maxdata;
-       }
-
-       ret = comedi_data_write( setup->dev, dac->subdev, dac->chan, 0, 0,
-               dac->current);
-       if(ret < 0) perror("update_caldac()");
-}
-
-#if 0
-void check_gain(int ad_chan,int range)
-{
-       int i;
-
-       for(i=0;i<n_caldacs;i++){
-               check_gain_chan(ad_chan,range,i);
-       }
-}
-#endif
-
-#if 0
-double check_gain_chan(int ad_chan,int range,int cdac)
-{
-       linear_fit_t l;
-
-       return check_gain_chan_x(&l,CR_PACK(ad_chan,range,AREF_OTHER),cdac);
-}
-#endif
-
-
-double check_gain_chan_x( calibration_setup_t *setup, linear_fit_t *l,unsigned int ad_chanspec,int cdac)
-{
-       int orig,i,n;
-       int step;
-       new_sv_t sv;
-       double sum_err;
-       int sum_err_count=0;
-       char str[20];
-
-       n = setup->caldacs[cdac].maxdata+1;
-       memset(l,0,sizeof(*l));
-
-       step=n/16;
-       if(step<1)step=1;
-       l->n=0;
-
-       l->y_data=malloc(n*sizeof(double)/step);
-       if(l->y_data == NULL)
-       {
-               perror( __FUNCTION__ );
-               exit(1);
-       }
-
-       orig = setup->caldacs[cdac].current;
-
-       my_sv_init(&sv, setup, setup->ad_subdev,ad_chanspec);
-
-       update_caldac( setup, cdac, 0 );
-       usleep(caldac_settle_usec);
-
-       new_sv_measure( setup->dev, &sv);
-
-       sum_err=0;
-       for(i=0;i*step<n;i++){
-               update_caldac( setup, cdac, i*step );
-               usleep(caldac_settle_usec);
-
-               new_sv_measure( setup->dev, &sv);
-
-               l->y_data[i]=sv.average;
-               if(!isnan(sv.average)){
-                       sum_err+=sv.error;
-                       sum_err_count++;
-               }
-               l->n++;
-       }
-
-       update_caldac( setup, cdac, orig );
-
-       l->yerr=sum_err/sqrt(sum_err_count);
-       l->dx=step;
-       l->x0=0;
-
-       linear_fit_monotonic(l);
-
-       if(verbose>=2 || (verbose>=1 && fabs(l->slope/l->err_slope)>4.0)){
-               sci_sprint_alt(str,l->slope,l->err_slope);
-               printf("caldac[%d] gain=%s V/bit S_min=%g dof=%g\n",
-                       cdac,str,l->S_min,l->dof);
-               //printf("--> %g\n",fabs(l.slope/l.err_slope));
-       }
-
-       if(verbose>=3)dump_curve(l);
-
-       free(l->y_data);
-
-       return l->slope;
-}
-
-
-double check_gain_chan_fine( calibration_setup_t *setup, linear_fit_t *l,unsigned int ad_chanspec,int cdac)
-{
-       int orig,i,n;
-       int step;
-       new_sv_t sv;
-       double sum_err;
-       int sum_err_count=0;
-       char str[20];
-       int fine_size = 10;
-
-       n=2*fine_size+1;
-       memset(l,0,sizeof(*l));
-
-       step=1;
-       l->n=0;
-
-       l->y_data=malloc(n*sizeof(double)/step);
-       if(l->y_data == NULL)
-       {
-               perror( __FUNCTION__ );
-               exit(1);
-       }
-
-       orig = setup->caldacs[cdac].current;
-
-       my_sv_init(&sv, setup, setup->ad_subdev,ad_chanspec);
-
-       update_caldac( setup, cdac, 0 );
-       usleep(caldac_settle_usec);
-
-       new_sv_measure( setup->dev, &sv);
-
-       sum_err=0;
-       for(i=0;i<n;i++){
-               update_caldac( setup, cdac, i+orig-fine_size );
-               usleep(caldac_settle_usec);
-
-               new_sv_measure( setup->dev, &sv);
-
-               l->y_data[i]=sv.average;
-               if(!isnan(sv.average)){
-                       sum_err+=sv.error;
-                       sum_err_count++;
-               }
-               l->n++;
-       }
-
-       update_caldac( setup, cdac, orig );
-
-       l->yerr=sum_err/sqrt(sum_err_count);
-       l->dx=1;
-       l->x0=orig-fine_size;
-
-       linear_fit_monotonic(l);
-
-       if(verbose>=2 || (verbose>=1 && fabs(l->slope/l->err_slope)>4.0)){
-               sci_sprint_alt(str,l->slope,l->err_slope);
-               printf("caldac[%d] gain=%s V/bit S_min=%g dof=%g\n",
-                       cdac,str,l->S_min,l->dof);
-               //printf("--> %g\n",fabs(l.slope/l.err_slope));
-       }
-
-       if(verbose>=3)dump_curve(l);
-
-       free(l->y_data);
-
-       return l->slope;
-}
-
-
-
-/* helpers */
-
-int is_unipolar( comedi_t *dev, unsigned int subdevice,
-       unsigned int channel, unsigned int range )
-{
-       comedi_range *range_ptr;
-
-       range_ptr = comedi_get_range( dev, subdevice, channel, range );
-       assert( range_ptr != NULL );
-       /* This method is better than a direct test, which might fail */
-       if( fabs( range_ptr->min ) < fabs( range_ptr->max * 0.001 ) )
-               return 1;
-       else
-               return 0;
-}
-
-int is_bipolar( comedi_t *dev, unsigned int subdevice,
-       unsigned int channel, unsigned int range )
-{
-       comedi_range *range_ptr;
-
-       range_ptr = comedi_get_range( dev, subdevice, channel, range );
-       assert( range_ptr != NULL );
-       /* This method is better than a direct test, which might fail */
-       if( fabs( range_ptr->max + range_ptr->min ) < fabs( range_ptr->max * 0.001 ) )
-               return 1;
-       else
-               return 0;
-}
-
-int get_bipolar_lowgain(comedi_t *dev,int subdev)
-{
-       int ret = -1;
-       int i;
-       int n_ranges = comedi_get_n_ranges(dev,subdev,0);
-       double max = 0;
-       comedi_range *range;
-
-       for(i=0;i<n_ranges;i++){
-               range = comedi_get_range(dev,subdev,0,i);
-               if( is_bipolar( dev, subdev, 0, i ) == 0 ) continue;
-               if(range->unit == UNIT_none ) continue;
-               if(range->max>max){
-                       ret = i;
-                       max=range->max;
-               }
-       }
-
-       return ret;
-}
-
-int get_bipolar_highgain(comedi_t *dev,int subdev)
-{
-       int ret = -1;
-       int i;
-       int n_ranges = comedi_get_n_ranges(dev,subdev,0);
-       double min = HUGE_VAL;
-       comedi_range *range;
-
-       for(i=0;i<n_ranges;i++){
-               range = comedi_get_range(dev,subdev,0,i);
-               if( is_bipolar( dev, subdev, 0, i ) == 0 ) continue;
-               if(range->unit == UNIT_none ) continue;
-               if(range->max<min){
-                       ret = i;
-                       min=range->max;
-               }
-       }
-
-       return ret;
-}
-
-int get_unipolar_lowgain(comedi_t *dev,int subdev)
-{
-       int ret = -1;
-       int i;
-       int n_ranges = comedi_get_n_ranges(dev,subdev,0);
-       double max = 0.0;
-       comedi_range *range;
-
-       for(i=0;i<n_ranges;i++){
-               range = comedi_get_range(dev,subdev,0,i);
-               if( is_unipolar( dev, subdev, 0, i ) == 0 ) continue;
-               if(range->unit == UNIT_none ) continue;
-               if(range->max>max){
-                       ret = i;
-                       max=range->max;
-               }
-       }
-
-       return ret;
-}
-
-int get_unipolar_highgain(comedi_t *dev,int subdev)
-{
-       int ret = -1;
-       int i;
-       int n_ranges = comedi_get_n_ranges(dev,subdev,0);
-       double max = HUGE_VAL;
-       comedi_range *range;
-
-       for(i=0;i<n_ranges;i++){
-               range = comedi_get_range(dev,subdev,0,i);
-               if( is_unipolar( dev, subdev, 0, i ) == 0 ) continue;
-               if(range->unit == UNIT_none ) continue;
-               if(range->max < max){
-                       ret = i;
-                       max=range->max;
-               }
-       }
-
-       return ret;
-}
-
-int read_eeprom( calibration_setup_t *setup, int addr)
-{
-       lsampl_t data = 0;
-       int retval;
-
-       retval = comedi_data_read( setup->dev, setup->eeprom_subdev, addr,0,0,&data);
-       if( retval < 0 )
-       {
-               perror( "read_eeprom()" );
-               return retval;
-       }
-
-       return data;
-}
-
-double read_chan( calibration_setup_t *setup, int adc,int range)
-{
-       int n;
-       new_sv_t sv;
-       char str[20];
-
-       my_sv_init(&sv, setup,  setup->ad_subdev,CR_PACK(adc,range,AREF_OTHER));
-
-       n=new_sv_measure( setup->dev, &sv);
-
-       sci_sprint_alt(str,sv.average,sv.error);
-       printf("chan=%d ave=%s\n",adc,str);
-
-       return sv.average;
-}
-
-int read_chan2( calibration_setup_t *setup, char *s,int adc,int range)
-{
-       int n;
-       new_sv_t sv;
-
-       my_sv_init(&sv, setup, setup->ad_subdev,CR_PACK(adc,range,AREF_OTHER));
-
-       n=new_sv_measure( setup->dev, &sv);
-
-       return sci_sprint_alt(s,sv.average,sv.error);
-}
-
-#if 0
-void set_ao(comedi_t *dev,int subdev,int chan,int range,double value)
-{
-       comedi_range *r = comedi_get_range(dev,subdev,chan,range);
-       lsampl_t maxdata = comedi_get_maxdata(dev,subdev,chan);
-       lsampl_t data;
-
-       data = comedi_from_phys(value,r,maxdata);
-
-       comedi_data_write(dev,subdev,chan,range,AREF_GROUND,data);
-}
-#endif
-
-int my_sv_init( new_sv_t *sv, const calibration_setup_t *setup, int subdev,
-       unsigned int chanspec )
-{
-       int retval;
-       retval = new_sv_init( sv, setup->dev, subdev, chanspec );
-       sv->settling_time_ns = setup->sv_settling_time_ns;
-       sv->order = setup->sv_order;
-       return retval;
-}
-
-int new_sv_init(new_sv_t *sv,comedi_t *dev,int subdev,unsigned int chanspec)
-{
-       memset(sv,0,sizeof(*sv));
-
-       sv->subd=subdev;
-       //sv->t.flags=TRIG_DITHER;
-       sv->chanspec = chanspec;
-
-       //sv->chanlist[0]=CR_PACK(chan,range,aref);
-
-       sv->maxdata=comedi_get_maxdata(dev,subdev,CR_CHAN(chanspec));
-       sv->rng=comedi_get_range(dev,subdev,
-               CR_CHAN(chanspec), CR_RANGE(chanspec));
-
-       sv->order=10;
-
-       return 0;
-}
-
-int new_sv_measure( comedi_t *dev, new_sv_t *sv)
-{
-       lsampl_t *data;
-       int n,i,ret;
-
-       double x,s,s2;
-
-       n=1<<sv->order;
-
-       data=malloc(sizeof(lsampl_t)*n);
-       if(data == NULL)
-       {
-               perror( __FUNCTION__ );
-               exit(1);
-       }
-
-       ret = comedi_data_read_hint(dev, sv->subd, sv->chanspec, 0, 0);
-       if(ret<0){
-               printf("hint barf\n");
-               goto out;
-       }
-       comedi_nanodelay(dev, sv->settling_time_ns);
-
-       ret = comedi_data_read_n(dev, sv->subd, sv->chanspec, 0, 0, data, n);
-       if(ret<0){
-               printf("barf\n");
-               goto out;
-       }
-
-       s=0.0;
-       s2=0.0;
-       for(i = 0; i < n; i++){
-               x = comedi_to_phys(data[i], sv->rng, sv->maxdata);
-               s += x;
-               s2 += x * x;
-       }
-       s /= n;
-       s2 /= n;
-       sv->average=s;
-       sv->stddev=sqrt( ( ( n + 1 ) / n ) * ( s2 - s * s ) );
-       sv->error=sv->stddev / sqrt( n );
-
-       ret=n;
-
-out:
-       free(data);
-
-       return ret;
-}
-
-int new_sv_measure_order( comedi_t *dev, new_sv_t *sv,int order)
-{
-       lsampl_t *data;
-       int n,i,ret;
-       double x,s,s2;
-
-       n=1<<order;
-
-       data=malloc(sizeof(lsampl_t)*n);
-       if(data == NULL)
-       {
-               perror( __FUNCTION__ );
-               exit(1);
-       }
-
-       ret = comedi_data_read_n(dev, sv->subd, sv->chanspec, 0, 0, data, n);
-       if(ret<0){
-               printf("barf order\n");
-               goto out;
-       }
-
-       s=0;
-       s2=0;
-       for(i = 0; i < n; i++){
-               x = comedi_to_phys(data[i], sv->rng, sv->maxdata);
-               s += x;
-               s2 += x * x;
-       }
-       s /= n;
-       s2 /= n;
-       sv->average = s;
-       sv->stddev=sqrt( ( ( n + 1 ) / n ) * ( s2 - s * s ) );
-       sv->error=sv->stddev / sqrt( n );
-
-       ret=n;
-
-out:
-       free(data);
-
-       return ret;
-}
-
-
-
-/* linear fitting */
-
-int calculate_residuals(linear_fit_t *l);
-
-int linear_fit_monotonic(linear_fit_t *l)
-{
-       double x,y;
-       double sxp;
-       int i;
-
-       l->min=HUGE_VAL;
-       l->max=-HUGE_VAL;
-       l->s1=0;
-       l->sx=0;
-       l->sy=0;
-       l->sxy=0;
-       l->sxx=0;
-       for(i=0;i<l->n;i++){
-               x=l->x0+i*l->dx;
-               y=l->y_data[i];
-
-               if(isnan(y))continue;
-
-               if(l->y_data[i]<l->min)l->min=l->y_data[i];
-               if(l->y_data[i]>l->max)l->max=l->y_data[i];
-               l->s1+=1;
-               l->sx+=x;
-               l->sy+=y;
-               l->sxy+=x*y;
-               l->sxx+=x*x;
-       }
-       sxp=l->sxx-l->sx*l->sx/l->s1;
-
-       l->ave_x=l->sx/l->s1;
-       l->ave_y=l->sy/l->s1;
-       l->slope=(l->s1*l->sxy-l->sx*l->sy)/(l->s1*l->sxx-l->sx*l->sx);
-       l->err_slope=l->yerr/sqrt(sxp);
-       l->err_ave_y=l->yerr/sqrt(l->s1);
-
-       calculate_residuals(l);
-
-       return 0;
-}
-
-int calculate_residuals(linear_fit_t *l)
-{
-       double x,y;
-       double res,sum_res2;
-       int i;
-
-       sum_res2=0;
-       for(i=0;i<l->n;i++){
-               x=l->x0+i*l->dx-l->ave_x;
-               y=l->y_data[i];
-
-               if(isnan(y))continue;
-
-               res=l->ave_y+l->slope*x-y;
-
-               sum_res2+=res*res;
-       }
-       l->S_min=sum_res2/(l->yerr*l->yerr);
-       l->dof=l->s1-2;
-
-       return 0;
-}
-
-double linear_fit_func_y(linear_fit_t *l,double x)
-{
-       return l->ave_y+l->slope*(x-l->ave_x);
-}
-
-double linear_fit_func_x(linear_fit_t *l,double y)
-{
-       return l->ave_x+(y-l->ave_y)/l->slope;
-}
-
-void dump_curve(linear_fit_t *l)
-{
-       static int dump_number=0;
-       double x,y;
-       int i;
-
-       printf("start dump %d\n",dump_number);
-       for(i=0;i<l->n;i++){
-               x=l->x0+i*l->dx-l->ave_x;
-               y=l->y_data[i];
-               printf("D%d: %d %g %g %g\n",dump_number,i,y,
-                       l->ave_y+l->slope*x,
-                       l->ave_y+l->slope*x-y);
-       }
-       printf("end dump\n");
-       dump_number++;
-}
-
-
-/* printing of scientific numbers (with errors) */
-
-int sci_sprint(char *s,double x,double y)
-{
-       int errsig;
-       int maxsig;
-       int sigfigs;
-       double mantissa;
-       double error;
-       double mindigit;
-
-       errsig = floor(log10(y));
-       maxsig = floor(log10(x));
-       mindigit = pow(10,errsig);
-
-       if(maxsig<errsig)maxsig=errsig;
-
-       sigfigs = maxsig-errsig+2;
-
-       mantissa = x*pow(10,-maxsig);
-       error = y*pow(10,-errsig+1);
-
-       return sprintf(s,"%0.*f(%2.0f)e%d",sigfigs-1,mantissa,error,maxsig);
-}
-
-int sci_sprint_alt(char *s,double x,double y)
-{
-       int errsig;
-       int maxsig;
-       int sigfigs;
-       double mantissa;
-       double error;
-       double mindigit;
-
-       errsig = floor(log10(fabs(y)));
-       maxsig = floor(log10(fabs(x)));
-       mindigit = pow(10,errsig);
-
-       if(maxsig<errsig)maxsig=errsig;
-
-       sigfigs = maxsig-errsig+2;
-
-       mantissa = x*pow(10,-maxsig);
-       error = y*pow(10,-errsig+1);
-
-       if(isnan(x)){
-               return sprintf(s,"%g",x);
-       }
-       if(errsig==1 && maxsig<4 && maxsig>1){
-               return sprintf(s,"%0.0f(%2.0f)",x,error);
-       }
-       if(maxsig<=0 && maxsig>=-2){
-               return sprintf(s,"%0.*f(%2.0f)",sigfigs-1-maxsig,
-                       mantissa*pow(10,maxsig),error);
-       }
-       return sprintf(s,"%0.*f(%2.0f)e%d",sigfigs-1,mantissa,error,maxsig);
-}
-
-double very_low_target( comedi_t *dev, unsigned int subdevice,
-       unsigned int channel, unsigned int range )
-{
-       comedi_range *range_ptr;
-       int max_data;
-
-       range_ptr = comedi_get_range( dev, subdevice, channel, range );
-       assert( range_ptr != NULL );
-       max_data = comedi_get_maxdata( dev, subdevice, 0 );
-       assert( max_data > 0 );
-
-       return comedi_to_phys( 1, range_ptr, max_data ) / 2.0;
-}
-
-double fractional_offset( calibration_setup_t *setup, int subdevice,
-       unsigned int channel, unsigned int range, int obs )
-{
-       comedi_range *range_ptr;
-       double target;
-       double reading;
-       unsigned int chanspec;
-       new_sv_t sv;
-
-       if( subdevice < 0 || obs < 0 ) return 0.0;
-
-       chanspec = setup->observables[obs].observe_insn.chanspec;
-       target = setup->observables[obs].target;
-
-       range_ptr = comedi_get_range( setup->dev, subdevice, channel, range );
-       assert( range_ptr != NULL );
-
-       comedi_set_global_oor_behavior( COMEDI_OOR_NUMBER );
-       preobserve( setup, obs);
-
-       my_sv_init( &sv, setup, setup->ad_subdev, chanspec );
-       new_sv_measure( setup->dev, &sv );
-       reading = sv.average;
-
-       return ( reading - target ) / ( range_ptr->max - range_ptr->min );
-}
-
-double get_tolerance( calibration_setup_t *setup, int subdevice,
-       double num_bits )
-{
-       int maxdata;
-
-       if( subdevice < 0 ) return INFINITY;
-
-       maxdata = comedi_get_maxdata( setup->dev, subdevice, 0 );
-       assert( maxdata > 0 );
-       return num_bits / maxdata;
-}
diff --git a/comedi_calibrate/ni.c b/comedi_calibrate/ni.c
deleted file mode 100644 (file)
index 971e2b7..0000000
+++ /dev/null
@@ -1,1706 +0,0 @@
-/*
-   A little auto-calibration utility, for boards
-   that support it.
-
-   copyright (C) 1999,2000,2001,2002 by David Schleef
-   copyright (C) 2003 by Frank Mori Hess
-
- */
-
-/***************************************************************************
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU Lesser General Public License as        *
- *   published by                                                          *
- *   the Free Software Foundation; either version 2.1 of the License, or   *
- *   (at your option) any later version.                                   *
- *                                                                         *
- ***************************************************************************/
-
-#define _GNU_SOURCE
-
-#include <stdio.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <errno.h>
-#include <getopt.h>
-#include <ctype.h>
-#include <math.h>
-#include <stdlib.h>
-#include <string.h>
-#include <assert.h>
-
-#include "calib.h"
-
-
-char ni_id[] = "$Id$";
-
-struct board_struct{
-       char *name;
-       int status;
-       int (*cal)( calibration_setup_t *setup);
-       void (*setup_observables)( calibration_setup_t *setup );
-       int ref_eeprom_lsb;
-       int ref_eeprom_msb;
-};
-
-static int ni_setup_board( calibration_setup_t *setup , const char *device_name );
-static void ni_setup_observables( calibration_setup_t *setup );
-static void ni_setup_observables_611x( calibration_setup_t *setup );
-static void ni67xx_setup_observables( calibration_setup_t *setup );
-
-static int cal_ni_at_mio_16de_10(calibration_setup_t *setup);
-static int cal_ni_at_mio_16e_2(calibration_setup_t *setup);
-static int cal_ni_at_mio_64e_3(calibration_setup_t *setup);
-static int cal_ni_daqcard_ai_16xe_50(calibration_setup_t *setup);
-static int cal_ni_at_mio_16e_1(calibration_setup_t *setup);
-static int cal_ni_pci_mio_16e_1(calibration_setup_t *setup);
-static int cal_ni_pci_6014(calibration_setup_t *setup);
-static int cal_ni_pci_6024e(calibration_setup_t *setup);
-static int cal_ni_pci_6025e(calibration_setup_t *setup);
-static int cal_ni_pci_6032e(calibration_setup_t *setup);
-static int cal_ni_pci_6034e(calibration_setup_t *setup);
-static int cal_ni_pci_6035e(calibration_setup_t *setup);
-static int cal_ni_pci_6036e(calibration_setup_t *setup);
-static int cal_ni_pci_6071e(calibration_setup_t *setup);
-static int cal_ni_pxi_6071e(calibration_setup_t *setup);
-static int cal_ni_at_mio_16e_10(calibration_setup_t *setup);
-static int cal_ni_pci_mio_16xe_50(calibration_setup_t *setup);
-static int cal_ni_pci_6023e(calibration_setup_t *setup);
-static int cal_ni_at_mio_16xe_50(calibration_setup_t *setup);
-static int cal_ni_pci_mio_16xe_10(calibration_setup_t *setup);
-static int cal_ni_pci_6052e(calibration_setup_t *setup);
-static int cal_ni_daqcard_ai_16e_4(calibration_setup_t *setup);
-static int cal_ni_pci_611x(calibration_setup_t *setup);
-static int cal_ni_pci_mio_16e_4(calibration_setup_t *setup);
-static int cal_ni_daqcard_6062e(calibration_setup_t *setup);
-static int cal_ni_daqcard_6024e(calibration_setup_t *setup);
-static int cal_ni_daqcard_6036e(calibration_setup_t *setup);
-static int cal_ni_pci_6711(calibration_setup_t *setup);
-
-static double ni_get_reference( calibration_setup_t *setup, int lsb_loc,int msb_loc);
-
-static struct board_struct boards[]={
-       { "at-ai-16xe-10", STATUS_UNKNOWN, NULL, ni_setup_observables, 0x1b7, 0x1b8 },
-       { "at-mio-16de-10", STATUS_DONE, cal_ni_at_mio_16de_10, ni_setup_observables, 0x1a7, 0x1a8 },
-       { "at-mio-16e-1", STATUS_DONE, cal_ni_at_mio_16e_1, ni_setup_observables, 0x1a9, 0x1aa },
-       { "at-mio-16e-2", STATUS_DONE, cal_ni_at_mio_16e_2, ni_setup_observables, 0x1a9, 0x1aa },
-       { "at-mio-16e-10", STATUS_DONE, cal_ni_at_mio_16e_10, ni_setup_observables, 0x1a7, 0x1a8 },
-       { "at-mio-16xe-10", STATUS_UNKNOWN, NULL, ni_setup_observables, 0x1b7, 0x1b8 },
-       { "at-mio-16xe-50", STATUS_DONE, cal_ni_at_mio_16xe_50, ni_setup_observables, 0x1b5, 0x1b6 },
-       { "at-mio-64e-3", STATUS_SOME, cal_ni_at_mio_64e_3, ni_setup_observables, 0x1a9, 0x1aa},
-       { "DAQCard-ai-16e-4", STATUS_DONE, cal_ni_daqcard_ai_16e_4, ni_setup_observables, 0x1b5, 0x1b6 },
-       { "DAQCard-ai-16xe-50", STATUS_DONE, cal_ni_daqcard_ai_16xe_50, ni_setup_observables, 0x1be, 0x1bf },
-       { "DAQCard-6024E", STATUS_SOME, cal_ni_daqcard_6024e, ni_setup_observables, -1, -1 },
-       { "DAQCard-6036E", STATUS_DONE, cal_ni_daqcard_6036e, ni_setup_observables, 0x1ab, 0x1ac },
-       { "DAQCard-6062E", STATUS_DONE, cal_ni_daqcard_6062e, ni_setup_observables, 0x1a9, 0x1aa },
-       { "pci-mio-16e-1", STATUS_DONE, cal_ni_pci_mio_16e_1, ni_setup_observables, 0x1a9, 0x1aa },
-       { "pci-mio-16e-4", STATUS_SOME, cal_ni_pci_mio_16e_4, ni_setup_observables, 0x1a9, 0x1aa },
-       { "pci-mio-16xe-10", STATUS_DONE,       cal_ni_pci_mio_16xe_10, ni_setup_observables, 0x1ae, 0x1af },
-       { "pci-mio-16xe-50", STATUS_SOME, cal_ni_pci_mio_16xe_50, ni_setup_observables, 0x1b5, 0x1b6 },
-       { "pci-6014", STATUS_DONE, cal_ni_pci_6014, ni_setup_observables, 0x1ab, 0x1ac },
-       { "pci-6023e", STATUS_DONE, cal_ni_pci_6023e, ni_setup_observables, 0x1bb, 0x1bc },
-       { "pci-6024e", STATUS_DONE, cal_ni_pci_6024e, ni_setup_observables, 0x1af, 0x1b0 },
-       { "pci-6025e", STATUS_SOME, cal_ni_pci_6025e, ni_setup_observables, 0x1af, 0x1b0 },
-       { "pci-6031e", STATUS_DONE, cal_ni_pci_mio_16xe_10, ni_setup_observables, 0x1ae, 0x1af },
-       { "pci-6032e", STATUS_DONE, cal_ni_pci_6032e, ni_setup_observables, 0x1ae, 0x1af },
-       { "pci-6033e", STATUS_DONE, cal_ni_pci_6032e, ni_setup_observables, 0x1b7, 0x1b8 },
-       { "pci-6034e", STATUS_DONE, cal_ni_pci_6034e, ni_setup_observables, 0x1bb, 0x1bc },
-       { "pci-6035e", STATUS_DONE, cal_ni_pci_6035e, ni_setup_observables, 0x1af, 0x1b0 },
-       { "pci-6036e", STATUS_DONE, cal_ni_pci_6036e, ni_setup_observables, 0x1ab, 0x1ac },
-       { "pci-6052e", STATUS_DONE, cal_ni_pci_6052e, ni_setup_observables, 0x19f, 0x1a0 },
-       { "pci-6071e", STATUS_DONE, cal_ni_pci_6071e, ni_setup_observables, 0x1a9, 0x1aa },
-       { "pci-6110", STATUS_DONE, cal_ni_pci_611x, ni_setup_observables_611x, 0x1d4, 0x1d5 },
-       { "pci-6111", STATUS_DONE, cal_ni_pci_611x, ni_setup_observables_611x, 0x1d4, 0x1d5 },
-       { "pxi-6025e", STATUS_UNKNOWN, NULL, ni_setup_observables, -1, -1 },
-       { "pxi-6030e", STATUS_UNKNOWN, NULL, ni_setup_observables, -1, -1 },
-       { "pxi-6031e", STATUS_UNKNOWN, NULL, ni_setup_observables, -1, -1 },
-       { "pxi-6040e", STATUS_UNKNOWN, NULL, ni_setup_observables, -1, -1 },
-       { "pxi-6052e", STATUS_UNKNOWN, NULL, ni_setup_observables, -1, -1 },
-       { "pxi-6070e", STATUS_UNKNOWN, NULL, ni_setup_observables, -1, -1 },
-       { "pxi-6071e", STATUS_GUESS, cal_ni_pxi_6071e, ni_setup_observables, -1, -1 },
-       { "pci-6711", STATUS_DONE, cal_ni_pci_6711, ni67xx_setup_observables, 0x1d4, 0x1d5},
-       { "pci-6713", STATUS_DONE, cal_ni_pci_6711, ni67xx_setup_observables, 0x1d4, 0x1d5},
-       { "pci-6731", STATUS_GUESS, cal_ni_pci_6711, ni67xx_setup_observables, -1, -1},
-       { "pci-6733", STATUS_GUESS, cal_ni_pci_6711, ni67xx_setup_observables, -1, -1},
-       { "pxi-6711", STATUS_GUESS, cal_ni_pci_6711, ni67xx_setup_observables, -1, -1},
-       { "pxi-6713", STATUS_GUESS, cal_ni_pci_6711, ni67xx_setup_observables, -1, -1},
-       { "pxi-6731", STATUS_GUESS, cal_ni_pci_6711, ni67xx_setup_observables, -1, -1},
-       { "pxi-6733", STATUS_GUESS, cal_ni_pci_6711, ni67xx_setup_observables, -1, -1},
-#if 0
-       { "at-mio-64e-3",       cal_ni_16e_1 },
-#endif
-};
-#define n_boards (sizeof(boards)/sizeof(boards[0]))
-
-static const int ni_num_observables = 20;
-enum observables{
-       ni_zero_offset_low = 0,
-       ni_zero_offset_high,
-       ni_reference_low,
-       ni_unip_zero_offset_low,
-       ni_unip_zero_offset_high,
-       ni_unip_reference_low,
-       ni_ao0_zero_offset,
-       ni_ao0_reference,
-       ni_ao0_linearity,
-       ni_ao1_zero_offset,
-       ni_ao1_reference,
-       ni_ao1_linearity,
-       ni_ao0_unip_zero_offset,
-       ni_ao0_unip_reference,
-       ni_ao0_unip_low_linearity,
-       ni_ao0_unip_mid_linearity,
-       ni_ao1_unip_zero_offset,
-       ni_ao1_unip_reference,
-       ni_ao1_unip_low_linearity,
-       ni_ao1_unip_mid_linearity,
-};
-static inline unsigned int ni_ao_zero_offset( unsigned int channel )
-{
-       if( channel ) return ni_ao1_zero_offset;
-       else return ni_ao0_zero_offset;
-}
-static inline unsigned int ni_ao_reference( unsigned int channel )
-{
-       if( channel ) return ni_ao1_reference;
-       else return ni_ao0_reference;
-}
-static inline unsigned int ni_ao_mid_linearity( unsigned int channel )
-{
-       if( channel ) return ni_ao1_linearity;
-       else return ni_ao0_linearity;
-}
-static inline unsigned int ni_ao_unip_zero_offset( unsigned int channel )
-{
-       if( channel ) return ni_ao1_unip_zero_offset;
-       else return ni_ao0_unip_zero_offset;
-}
-static inline unsigned int ni_ao_unip_reference( unsigned int channel )
-{
-       if( channel ) return ni_ao1_unip_reference;
-       else return ni_ao0_unip_reference;
-}
-static inline unsigned int ni_ao_unip_low_linearity( unsigned int channel )
-{
-       if( channel ) return ni_ao1_unip_low_linearity;
-       else return ni_ao0_unip_low_linearity;
-}
-static inline unsigned int ni_ao_unip_mid_linearity( unsigned int channel )
-{
-       if( channel ) return ni_ao1_unip_mid_linearity;
-       else return ni_ao0_unip_mid_linearity;
-}
-
-static const int num_ao_observables_611x = 4;
-static int ni_ao_zero_offset_611x( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range ) {
-       assert( range == 0 );
-       return 2 * channel;
-};
-static int ni_ao_reference_611x( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range ) {
-       assert( range == 0 );
-       return 2 * channel + 1;
-};
-static int ni_zero_offset_611x( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range ) {
-       return num_ao_observables_611x + 8 * range + 2 * channel;
-};
-static int ni_reference_611x( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int range ) {
-       return num_ao_observables_611x + 8 * range + 2 * channel + 1;
-};
-
-enum reference_sources {
-       REF_GND_GND = 0,
-       REF_AOGND_AIGND = 1,
-       REF_DAC0_GND = 2,
-       REF_DAC1_GND = 3,
-       REF_CALSRC_CALSRC = 4,
-       REF_CALSRC_GND = 5,
-       REF_DAC0_CALSRC = 6,
-       REF_DAC1_CALSRC = 7,
-};
-static inline unsigned int REF_DAC_GND( unsigned int channel )
-{
-       if( channel ) return REF_DAC1_GND;
-       else return REF_DAC0_GND;
-}
-static inline unsigned int REF_DAC_CALSRC( unsigned int channel )
-{
-       if( channel ) return REF_DAC1_CALSRC;
-       else return REF_DAC0_CALSRC;
-}
-
-static struct board_struct* ni_board( calibration_setup_t *setup )
-{
-       return setup->private_data;
-}
-
-typedef struct
-{
-       int adc_pregain_offset;
-       int adc_postgain_offset;
-       int adc_gain;
-       int adc_pregain_offset_fine;
-       int adc_postgain_offset_fine;
-       int adc_gain_fine;
-       int adc_unip_offset;
-       int adc_unip_offset_fine;
-       int dac_offset[ 2 ];
-       int dac_offset_fine[ 2 ];
-       int dac_gain[ 2 ];
-       int dac_gain_fine[ 2 ];
-       int dac_linearity[ 2 ];
-} ni_caldac_layout_t;
-
-static int cal_ni_generic( calibration_setup_t *setup,
-       const ni_caldac_layout_t *layout );
-
-static inline void init_ni_caldac_layout( ni_caldac_layout_t *layout )
-{
-       int i;
-
-       layout->adc_pregain_offset = -1;
-       layout->adc_postgain_offset = -1;
-       layout->adc_gain = -1;
-       layout->adc_unip_offset = -1;
-       layout->adc_unip_offset_fine = -1;
-       layout->adc_pregain_offset_fine = -1;
-       layout->adc_postgain_offset_fine = -1;
-       layout->adc_gain_fine = -1;
-       for( i = 0; i < 2; i++ )
-       {
-               layout->dac_offset[ i ] = -1;
-               layout->dac_offset_fine[ i ] = -1;
-               layout->dac_gain[ i ] = -1;
-               layout->dac_gain_fine[ i ] = -1;
-               layout->dac_linearity[ i ] = -1;
-       }
-}
-
-int ni_setup( calibration_setup_t *setup , const char *device_name )
-{
-       int retval;
-
-       retval = ni_setup_board( setup, device_name );
-       if( retval < 0 )
-       {
-               return ni_m_series_setup(setup, device_name);
-       }
-       setup_caldacs( setup, setup->caldac_subdev );
-
-       return 0;
-}
-
-static int ni_setup_board( calibration_setup_t *setup, const char *device_name )
-{
-       int i;
-
-       for(i = 0; i < n_boards; i++ ){
-               if(!strcmp( device_name, boards[i].name )){
-                       setup->status = boards[i].status;
-                       setup->do_cal = boards[i].cal;
-                       setup->private_data = &boards[ i ];
-                       boards[i].setup_observables( setup );
-                       break;
-               }
-       }
-       if( i == n_boards ) return -1;
-       return 0;
-}
-
-static void ni_setup_ao_observables( calibration_setup_t *setup )
-{
-       observable *o;
-       comedi_insn tmpl, po_tmpl;
-       unsigned int channel;
-       int ai_bipolar_lowgain;
-       int ao_bipolar_lowgain;
-       int ao_unipolar_lowgain;
-
-       ai_bipolar_lowgain = get_bipolar_lowgain( setup->dev, setup->ad_subdev);
-       assert(ai_bipolar_lowgain >= 0);
-       ao_bipolar_lowgain = get_bipolar_lowgain( setup->dev, setup->da_subdev);
-       assert(ao_bipolar_lowgain >= 0);
-       ao_unipolar_lowgain = get_unipolar_lowgain( setup->dev, setup->da_subdev);
-
-       memset(&tmpl,0,sizeof(tmpl));
-       tmpl.insn = INSN_READ;
-       tmpl.n = 1;
-       tmpl.subdev = setup->ad_subdev;
-
-       memset(&po_tmpl, 0, sizeof(po_tmpl));
-       po_tmpl.insn = INSN_WRITE;
-       po_tmpl.n = 1;
-       po_tmpl.subdev = setup->da_subdev;
-
-       for( channel = 0; channel < 2; channel++ )
-       {
-               /* ao zero offset */
-               o = setup->observables + ni_ao_zero_offset( channel );
-               assert( o->name == NULL );
-               asprintf( &o->name, "ao %i, zero offset, low gain", channel );
-               o->preobserve_insn = po_tmpl;
-               o->preobserve_insn.chanspec = CR_PACK(channel,ao_bipolar_lowgain,0);
-               o->preobserve_insn.data = o->preobserve_data;
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec =
-                       CR_PACK(REF_DAC_GND( channel ),ai_bipolar_lowgain,AREF_OTHER)
-                       | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->reference_source = REF_DAC_GND( channel );
-               set_target( setup, ni_ao_zero_offset( channel ),0.0);
-
-               /* ao gain */
-               o = setup->observables + ni_ao_reference( channel );
-               assert( o->name == NULL );
-               asprintf( &o->name, "ao %i, reference voltage, low gain", channel );
-               o->preobserve_insn = po_tmpl;
-               o->preobserve_insn.chanspec = CR_PACK(channel,ao_bipolar_lowgain,0);
-               o->preobserve_insn.data = o->preobserve_data;
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec =
-                       CR_PACK(REF_DAC_GND( channel ),ai_bipolar_lowgain,AREF_OTHER)
-                       | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->reference_source = REF_DAC_GND( channel );
-               set_target( setup, ni_ao_reference( channel ),8.0);
-
-               /* ao linearity, mid */
-               o = setup->observables + ni_ao_mid_linearity( channel );
-               assert( o->name == NULL );
-               asprintf( &o->name, "ao %i, linearity (mid), low gain", channel );
-               o->preobserve_insn = po_tmpl;
-               o->preobserve_insn.chanspec = CR_PACK(channel,ao_bipolar_lowgain,0);
-               o->preobserve_insn.data = o->preobserve_data;
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec =
-                       CR_PACK(REF_DAC_GND( channel ),ai_bipolar_lowgain,AREF_OTHER)
-                       | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->reference_source = REF_DAC_GND( channel );
-               set_target( setup, ni_ao_mid_linearity( channel ),4.0);
-
-               if( ao_unipolar_lowgain >= 0 )
-               {
-                       /* ao unipolar zero offset */
-                       o = setup->observables + ni_ao_unip_zero_offset( channel );
-                       assert( o->name == NULL );
-                       asprintf( &o->name, "ao %i, unipolar zero offset, low gain", channel );
-                       o->preobserve_insn = po_tmpl;
-                       o->preobserve_insn.chanspec = CR_PACK(channel,ao_unipolar_lowgain,0);
-                       o->preobserve_insn.data = o->preobserve_data;
-                       o->observe_insn = tmpl;
-                       o->observe_insn.chanspec =
-                               CR_PACK(REF_DAC_GND( channel ),ai_bipolar_lowgain,AREF_OTHER)
-                               | CR_ALT_SOURCE | CR_ALT_FILTER;
-                       o->reference_source = REF_DAC_GND( channel );
-                       set_target( setup, ni_ao_unip_zero_offset( channel ),0.0);
-
-                       /* ao unipolar gain */
-                       o = setup->observables + ni_ao_unip_reference( channel );
-                       assert( o->name == NULL );
-                       asprintf( &o->name, "ao %i, unipolar high, low gain", channel );
-                       o->preobserve_insn = po_tmpl;
-                       o->preobserve_insn.chanspec = CR_PACK(channel,ao_unipolar_lowgain,0);
-                       o->preobserve_insn.data = o->preobserve_data;
-                       o->observe_insn = tmpl;
-                       o->observe_insn.chanspec =
-                               CR_PACK(REF_DAC_GND( channel ),ai_bipolar_lowgain,AREF_OTHER)
-                               | CR_ALT_SOURCE | CR_ALT_FILTER;
-                       o->reference_source = REF_DAC_GND( channel );
-                       set_target( setup, ni_ao_unip_reference( channel ), 9.0);
-
-                       /* ao unipolar linearity, mid */
-                       o = setup->observables + ni_ao_unip_mid_linearity( channel );
-                       assert( o->name == NULL );
-                       asprintf( &o->name, "ao %i, unipolar linearity (mid), low gain", channel );
-                       o->preobserve_insn = po_tmpl;
-                       o->preobserve_insn.chanspec = CR_PACK(channel,ao_unipolar_lowgain,0);
-                       o->preobserve_insn.data = o->preobserve_data;
-                       o->observe_insn = tmpl;
-                       o->observe_insn.chanspec =
-                               CR_PACK(REF_DAC_GND( channel ),ai_bipolar_lowgain,AREF_OTHER)
-                               | CR_ALT_SOURCE | CR_ALT_FILTER;
-                       o->reference_source = REF_DAC_GND( channel );
-                       set_target( setup, ni_ao_unip_mid_linearity( channel ), 5.0);
-
-                       /* ao unipolar linearity, low */
-                       o = setup->observables + ni_ao_unip_low_linearity( channel );
-                       assert( o->name == NULL );
-                       asprintf( &o->name, "ao %i, unipolar linearity (low), low gain", channel );
-                       o->preobserve_insn = po_tmpl;
-                       o->preobserve_insn.chanspec = CR_PACK(channel,ao_unipolar_lowgain,0);
-                       o->preobserve_insn.data = o->preobserve_data;
-                       o->observe_insn = tmpl;
-                       o->observe_insn.chanspec =
-                               CR_PACK(REF_DAC_GND( channel ),ai_bipolar_lowgain,AREF_OTHER)
-                               | CR_ALT_SOURCE | CR_ALT_FILTER;
-                       o->reference_source = REF_DAC_GND( channel );
-                       set_target( setup, ni_ao_unip_low_linearity( channel ), 1.0);
-               }
-       }
-}
-
-static void ni_setup_observables( calibration_setup_t *setup )
-{
-       comedi_insn tmpl;
-       int bipolar_lowgain;
-       int bipolar_highgain;
-       int unipolar_lowgain;
-       int unipolar_highgain;
-       double voltage_reference;
-       observable *o;
-
-       bipolar_lowgain = get_bipolar_lowgain( setup->dev, setup->ad_subdev);
-       bipolar_highgain = get_bipolar_highgain( setup->dev, setup->ad_subdev);
-       unipolar_lowgain = get_unipolar_lowgain( setup->dev, setup->ad_subdev);
-       unipolar_highgain = get_unipolar_highgain( setup->dev, setup->ad_subdev);
-
-       if( ni_board( setup )->ref_eeprom_lsb >= 0 &&
-               ni_board( setup )->ref_eeprom_msb >= 0 )
-       {
-               voltage_reference = ni_get_reference( setup,
-                       ni_board( setup )->ref_eeprom_lsb, ni_board( setup )->ref_eeprom_msb );
-       }else
-       {
-               DPRINT( 0, "WARNING: unknown eeprom address for reference voltage\n"
-                       "correction.  This might be fixable if you send us an eeprom dump\n"
-                       "(see the demo/eeprom_dump program).\n");
-               voltage_reference = 5.0;
-       }
-
-       memset(&tmpl,0,sizeof(tmpl));
-       tmpl.insn = INSN_READ;
-       tmpl.n = 1;
-       tmpl.subdev = setup->ad_subdev;
-
-       setup->n_observables = ni_num_observables;
-
-       /* 0 offset, low gain */
-       o = setup->observables + ni_zero_offset_low;
-       o->name = "ai, bipolar zero offset, low gain";
-       o->observe_insn = tmpl;
-       o->observe_insn.chanspec = CR_PACK(REF_GND_GND,bipolar_lowgain,AREF_OTHER)
-               | CR_ALT_SOURCE | CR_ALT_FILTER;
-       o->reference_source = REF_GND_GND;
-       o->target = 0;
-
-       /* 0 offset, high gain */
-       o = setup->observables + ni_zero_offset_high;
-       o->name = "ai, bipolar zero offset, high gain";
-       o->observe_insn = tmpl;
-       o->observe_insn.chanspec = CR_PACK(REF_GND_GND,bipolar_highgain,AREF_OTHER)
-               | CR_ALT_SOURCE | CR_ALT_FILTER;
-       o->reference_source = REF_GND_GND;
-       o->target = 0;
-
-       /* voltage reference */
-       o = setup->observables + ni_reference_low;
-       o->name = "ai, bipolar voltage reference, low gain";
-       o->observe_insn = tmpl;
-       o->observe_insn.chanspec = CR_PACK(REF_CALSRC_GND,bipolar_lowgain,AREF_OTHER)
-               | CR_ALT_SOURCE | CR_ALT_FILTER;
-       o->reference_source = REF_CALSRC_GND;
-       o->target = voltage_reference;
-
-       if(unipolar_lowgain>=0){
-               o = setup->observables + ni_unip_zero_offset_low;
-               o->name = "ai, unipolar zero offset, low gain";
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec =
-                       CR_PACK(REF_GND_GND,unipolar_lowgain,AREF_OTHER)
-                       | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->reference_source = REF_GND_GND;
-               o->target = very_low_target( setup->dev, setup->ad_subdev, 0, unipolar_lowgain );
-
-               o = setup->observables + ni_unip_reference_low;
-               o->name = "ai, unipolar voltage reference, low gain";
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec =
-                       CR_PACK(REF_CALSRC_GND,unipolar_lowgain,AREF_OTHER)
-                       | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->reference_source = REF_CALSRC_GND;
-               o->target = voltage_reference;
-       }
-
-       if(unipolar_highgain >= 0)
-       {
-               o = setup->observables + ni_unip_zero_offset_high;
-               o->name = "ai, unipolar zero offset, high gain";
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec =
-                       CR_PACK(REF_GND_GND,unipolar_highgain,AREF_OTHER)
-                       | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->reference_source = REF_GND_GND;
-               o->target = very_low_target( setup->dev, setup->ad_subdev, 0, unipolar_highgain );
-       }
-
-       if(setup->da_subdev >= 0)
-               ni_setup_ao_observables( setup );
-}
-
-/* for +-50V and +-20V ranges, the reference source goes 0V
- * to 50V instead of 0V to 5V */
-static unsigned int cal_gain_register_bits_611x( double reference, double *voltage )
-{
-       int bits;
-
-       bits = 200.0 * ( *voltage / reference );
-       if( bits > 200 ) bits = 200;
-       if( bits < 0 ) bits = 0;
-
-       *voltage = reference * ( bits / 200.0 );
-       return bits;
-}
-
-static unsigned int ref_source_611x( unsigned int ref_source, unsigned int cal_gain_bits )
-{
-       return ( ref_source & 0xf ) | ( ( cal_gain_bits << 4 ) & 0xff0 );
-}
-
-static void reference_target_611x( calibration_setup_t *setup,
-       observable *o, double master_reference, unsigned int range )
-{
-       int cal_gain_reg_bits;
-       double reference;
-       double target;
-       comedi_range *range_ptr;
-
-       range_ptr = comedi_get_range( setup->dev, setup->ad_subdev, 0, range );
-       assert( range_ptr != NULL );
-       if( range_ptr->max > 19.0 ) reference = 10 * master_reference;
-       else reference = master_reference;
-       target = range_ptr->max * 0.8;
-
-       cal_gain_reg_bits = cal_gain_register_bits_611x( reference, &target );
-
-       o->reference_source = ref_source_611x( REF_CALSRC_GND, cal_gain_reg_bits );
-       o->target = target;
-}
-
-static void ni_setup_observables_611x( calibration_setup_t *setup )
-{
-       comedi_insn tmpl;
-       comedi_insn po_tmpl;
-       int range, channel;
-       double master_reference;
-       observable *o;
-       int num_ai_channels, num_ai_ranges;
-       static const int num_ao_channels = 2;
-
-       setup->sv_settling_time_ns = 10000000;
-       setup->sv_order = 14;
-
-       master_reference = ni_get_reference( setup,
-               ni_board( setup )->ref_eeprom_lsb, ni_board( setup )->ref_eeprom_msb );
-
-       memset(&tmpl,0,sizeof(tmpl));
-       tmpl.insn = INSN_READ;
-       tmpl.n = 1;
-       tmpl.subdev = setup->ad_subdev;
-
-       num_ai_channels = comedi_get_n_channels( setup->dev, setup->ad_subdev );
-       assert( num_ai_channels >= 0 );
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       assert( num_ai_ranges >= 0 );
-
-       for( channel = 0; channel < num_ai_channels; channel++ )
-       {
-               for( range = 0; range < num_ai_ranges; range++ )
-               {
-                       /* 0 offset */
-                       o = setup->observables + ni_zero_offset_611x( setup, channel, range );
-                       assert( o->name == NULL );
-                       asprintf( &o->name, "ai, ch %i, range %i, zero offset",
-                               channel, range );
-                       o->observe_insn = tmpl;
-                       o->observe_insn.chanspec = CR_PACK( channel, range, AREF_DIFF )
-                               | CR_ALT_SOURCE | CR_ALT_FILTER;
-                       o->reference_source = REF_GND_GND;
-                       o->target = 0.0;
-
-                       /* voltage reference */
-                       o = setup->observables + ni_reference_611x( setup, channel, range );
-                       assert( o->name == NULL );
-                       asprintf( &o->name, "ai, ch %i, range %i, voltage reference",
-                               channel, range );
-                       o->observe_insn = tmpl;
-                       o->observe_insn.chanspec = CR_PACK( channel, range, AREF_DIFF )
-                               | CR_ALT_SOURCE | CR_ALT_FILTER;
-                       reference_target_611x( setup, o, master_reference, range );
-               }
-       }
-
-       memset(&po_tmpl,0,sizeof(po_tmpl));
-       po_tmpl.insn = INSN_WRITE;
-       po_tmpl.n = 1;
-       po_tmpl.subdev = setup->da_subdev;
-
-       for( channel = 0; channel < num_ao_channels; channel ++ )
-       {
-               static const int ai_range_for_ao = 2;
-
-               /* ao zero offset */
-               o = setup->observables + ni_ao_zero_offset_611x( setup, channel, 0 );
-               assert( o->name == NULL );
-               asprintf( &o->name, "ao ch %i, zero offset", channel );
-               o->preobserve_insn = po_tmpl;
-               o->preobserve_insn.chanspec = CR_PACK( channel, 0, AREF_GROUND );
-               o->preobserve_insn.data = o->preobserve_data;
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK( 0, ai_range_for_ao, AREF_DIFF )
-                       | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->reference_source = REF_DAC_GND( channel );
-               set_target( setup, ni_ao_zero_offset_611x( setup, channel, 0 ), 0.0 );
-
-               /* ao gain */
-               o = setup->observables + ni_ao_reference_611x( setup, channel, 0 );
-               assert( o->name == NULL );
-               asprintf( &o->name, "ao ch %i, reference voltage", channel );
-               o->preobserve_insn = po_tmpl;
-               o->preobserve_insn.chanspec = CR_PACK( channel, 0, AREF_GROUND );
-               o->preobserve_insn.data = o->preobserve_data;
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK( 0, ai_range_for_ao, AREF_DIFF )
-                       | CR_ALT_SOURCE | CR_ALT_FILTER;
-               o->reference_source = REF_DAC_GND( channel );
-               set_target( setup, ni_ao_reference_611x( setup, channel, 0 ), 5.0 );
-       }
-
-       setup->n_observables = num_ao_observables_611x + 2 * num_ai_ranges * num_ai_channels;
-}
-
-static int cal_ni_daqcard_ai_16xe_50(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 8;
-       layout.adc_postgain_offset = 2;
-       layout.adc_gain = 0;
-       layout.adc_gain_fine = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_at_mio_16xe_50(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 8;
-       layout.adc_postgain_offset = 2;
-       layout.adc_gain = 0;
-       layout.adc_gain_fine = 1;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 4;
-       layout.dac_offset[ 1 ] = 7;
-       layout.dac_gain[ 1 ] = 5;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_mio_16xe_10(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 8;
-       layout.adc_postgain_offset = 2;
-       layout.adc_postgain_offset_fine = 3;
-       layout.adc_gain = 0;
-       layout.adc_gain_fine = 1;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 4;
-       layout.dac_offset[ 1 ] = 7;
-       layout.dac_gain[ 1 ] = 5;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_at_mio_16e_1(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_postgain_offset = 1;
-       layout.adc_gain = 3;
-       layout.adc_unip_offset = 2;
-       layout.dac_offset[0] = 5;
-       layout.dac_gain[0] = 6;
-       layout.dac_linearity[0] = 4;
-       layout.dac_offset[1] = 8;
-       layout.dac_gain[1] = 9;
-       layout.dac_linearity[1] = 7;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_at_mio_16e_2(calibration_setup_t *setup)
-{
-       return cal_ni_at_mio_16e_1(setup);
-}
-
-static int cal_ni_pci_mio_16e_1(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_postgain_offset = 1;
-       layout.adc_unip_offset = 2;
-       layout.adc_gain = 3;
-       layout.dac_offset[ 0 ] = 5;
-       layout.dac_gain[ 0 ] = 6;
-       layout.dac_linearity[ 0 ] = 4;
-       layout.dac_offset[ 1 ] = 8;
-       layout.dac_gain[ 1 ] = 9;
-       layout.dac_linearity[ 1 ] = 7;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_6014(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_postgain_offset = 4;
-       layout.adc_pregain_offset_fine = 8;
-       layout.adc_gain = 2;
-       layout.dac_offset[0] = 6;
-       layout.dac_offset_fine[0] = 10;
-       layout.dac_gain[0] = 7;
-       layout.dac_gain_fine[0] = 11;
-       layout.dac_offset[1] = 9;
-       layout.dac_offset_fine[1] = 1;
-       layout.dac_gain[1] = 3;
-       layout.dac_gain_fine[1] = 5;
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_6032e(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 8;
-       layout.adc_postgain_offset = 2;
-       layout.adc_postgain_offset_fine = 3;
-       layout.adc_gain = 0;
-       layout.adc_gain_fine = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_6034e(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_pregain_offset_fine = 8;
-       layout.adc_postgain_offset = 4;
-       layout.adc_gain = 2;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_at_mio_16de_10(calibration_setup_t *setup)
-{
-       if(comedi_get_version_code(setup->dev) <= COMEDI_VERSION_CODE(0, 7, 70))
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.71 or later\n"
-                "for this calibration to work properly\n" );
-       }
-       return cal_ni_pci_6035e(setup);
-}
-
-static int cal_ni_pci_6035e(calibration_setup_t *setup)
-{
-       /* this is for the ad8804_debug caldac */
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_pregain_offset_fine = 8;
-       layout.adc_postgain_offset = 4;
-       layout.adc_gain = 2;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 11;
-       layout.dac_linearity[ 0 ] = 10;
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 5;
-       layout.dac_linearity[ 1 ] = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_6036e(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       if( comedi_get_version_code( setup->dev ) <= COMEDI_VERSION_CODE( 0, 7, 66 ) )
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.67 or later\n"
-                "for this calibration to work properly\n" );
-       }
-
-       /* this is for the ad8804_debug caldac */
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_postgain_offset = 4;
-       layout.adc_pregain_offset_fine = 8;
-       layout.adc_gain = 2;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 7;
-       layout.dac_gain_fine[ 0 ] = 11;
-       layout.dac_linearity[ 0 ] = 10;
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 3;
-       layout.dac_gain_fine[ 1 ] = 5;
-       layout.dac_linearity[ 1 ] = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_6071e(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       if( comedi_get_version_code( setup->dev ) <= COMEDI_VERSION_CODE( 0, 7, 66 ) )
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.67 or later\n"
-                "for this calibration to work properly\n" );
-       }
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 8;
-       layout.adc_postgain_offset = 4;
-       layout.adc_unip_offset = 7;
-       layout.adc_gain = 2;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 11;
-       layout.dac_linearity[ 0 ] = 10;
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 5;
-       layout.dac_linearity[ 1 ] = 1;
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pxi_6071e(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       if( comedi_get_version_code( setup->dev ) <= COMEDI_VERSION_CODE( 0, 7, 66 ) )
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.67 or later\n"
-                "for this calibration to work properly\n" );
-       }
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_pregain_offset_fine = 8;
-       layout.adc_postgain_offset = 4;
-       layout.adc_gain = 2;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 11;
-       layout.dac_linearity[ 0 ] = 10;
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 5;
-       layout.dac_linearity[ 1 ] = 1;
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_at_mio_16e_10(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       if(comedi_get_version_code(setup->dev) <= COMEDI_VERSION_CODE(0, 7, 68))
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.69 or later\n"
-                "for this calibration to work properly\n" );
-       }
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_pregain_offset_fine = 8;
-       layout.adc_postgain_offset = 4;
-       layout.adc_gain = 2;
-       layout.adc_unip_offset = 7;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 11; 
-       layout.dac_linearity[ 0 ] = 10;
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 5;
-       layout.dac_linearity[1] = 1;
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_mio_16xe_50(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 8;
-       layout.adc_postgain_offset = 2;
-       layout.adc_gain = 0;
-       layout.adc_gain_fine = 1;
-       layout.adc_unip_offset = 7;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 4;
-       layout.dac_offset[ 1 ] = 7;
-       layout.dac_gain[ 1 ] = 5;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_6023e(calibration_setup_t *setup)
-{
-       /* for comedi-0.7.65 */
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 8; /* possibly wrong */
-       layout.adc_pregain_offset_fine = 0;
-       layout.adc_postgain_offset = 4;
-       layout.adc_gain = 2;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_6024e(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_postgain_offset = 4;
-       layout.adc_pregain_offset_fine = 8;
-       layout.adc_gain = 2;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 11;
-       layout.dac_linearity[ 0 ] = 10;
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 5;
-       layout.dac_linearity[ 1 ] = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_6025e(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_postgain_offset = 4;
-       layout.adc_pregain_offset_fine = 8;
-       layout.adc_gain = 2;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 11;
-       layout.dac_linearity[ 0 ] = 10;
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 5;
-       layout.dac_linearity[ 1 ] = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_pci_6052e(calibration_setup_t *setup)
-{
-       /*
-        * This board has noisy caldacs
-        *
-        * The NI documentation says (true mb88341 addressing):
-        *   0, 8   AI pregain  (coarse, fine)
-        *   4, 12  AI postgain
-        *   2, 10  AI reference
-        *   14, 7  AI unipolar offset
-        *
-        *   0      AO0 linearity
-        *   8, 4   AO0 reference
-        *   12     AO0 offset
-        *   2      AO1 linearity
-        *   10, 6  AO1 reference
-        *   14     AO1 offset
-        *
-        *  For us, these map to (ad8804 channels)
-        *
-        *   0, 1   AI pregain  (coarse, fine)
-        *   2, 3  AI postgain
-        *   4, 5  AI reference
-        *   7  AI unipolar offset
-        *
-        *   0      AO0 linearity
-        *   1, 2   AO0 reference
-        *   3      AO0 offset
-        *   4      AO1 linearity
-        *   5, 6   AO1 reference
-        *   7      AO1 offset
-        *
-        *  or, with mb88341 channels
-        *
-        *   xxx    AO0 linearity
-        *   7, 3   AO0 reference
-        *   11     AO0 offset
-        *   1      AO1 linearity
-        *   9, 5   AO1 reference
-        *   xxx    AO1 offset
-        *
-        */
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_postgain_offset = 2;
-       layout.adc_gain = 4;
-       layout.adc_unip_offset = 6;
-       layout.adc_unip_offset_fine = 7;
-       layout.adc_pregain_offset_fine = 1;
-       layout.adc_postgain_offset_fine = 3;
-       layout.adc_gain_fine = 5;
-
-       DPRINT(0, "WARNING: you need comedi driver version 0.7.67 or later\n"
-        "for this calibration to work properly\n" );
-/* this works when the first two caldacs are ad8804_debug */
-       layout.dac_offset[ 0 ] = 16 + 3;
-       layout.dac_gain[ 0 ] = 16 + 1;
-       layout.dac_gain_fine[ 0 ] = 16 + 2;
-       layout.dac_linearity[ 0 ] = 16 + 0;
-       layout.dac_offset[ 1 ] = 16 + 7;
-       layout.dac_gain[ 1 ] = 16 + 5;
-       layout.dac_gain_fine[ 1 ] = 16 + 6;
-       layout.dac_linearity[ 1 ] = 16 + 4;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_daqcard_ai_16e_4(calibration_setup_t *setup)
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 0;
-       layout.adc_postgain_offset = 1;
-       layout.adc_gain = 3;
-       layout.adc_unip_offset = 2;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int adc_offset_611x( unsigned int channel )
-{
-       return 2 * channel + 2;
-}
-static int adc_gain_611x( unsigned int channel )
-{
-       return 2 * channel + 1;
-}
-static int dac_offset_611x( unsigned int channel )
-{
-       return 12 + 2 + 2 * channel;
-}
-static int dac_gain_611x( unsigned int channel )
-{
-       return 12 + 1 + 2 * channel;
-}
-static int cal_ni_pci_611x( calibration_setup_t *setup )
-{
-       generic_layout_t layout;
-
-       init_generic_layout( &layout );
-       layout.adc_offset = adc_offset_611x;
-       layout.adc_gain = adc_gain_611x;
-       layout.dac_offset = dac_offset_611x;
-       layout.dac_gain = dac_gain_611x;
-       layout.adc_high_observable = ni_reference_611x;
-       layout.adc_ground_observable = ni_zero_offset_611x;
-       layout.dac_high_observable = ni_ao_reference_611x;
-       layout.dac_ground_observable = ni_ao_zero_offset_611x;
-
-       return generic_cal_by_channel_and_range( setup, &layout );
-}
-
-static int cal_ni_pci_mio_16e_4( calibration_setup_t *setup )
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 8;
-       layout.adc_postgain_offset = 4;
-       layout.adc_gain = 2;
-       layout.adc_unip_offset = 7;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 11;
-       layout.dac_linearity[ 0 ] = 10;
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 5;
-       layout.dac_linearity[ 1 ] = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_daqcard_6062e( calibration_setup_t *setup )
-{
-       ni_caldac_layout_t layout;
-
-       if( comedi_get_version_code( setup->dev ) <= COMEDI_VERSION_CODE( 0, 7, 66 ) )
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.67 or later\n"
-                "for this calibration to work properly\n" );
-       }
-       init_ni_caldac_layout( &layout );
-       layout.adc_pregain_offset = 8;
-       layout.adc_postgain_offset = 4;
-       layout.adc_gain = 2;
-       layout.adc_unip_offset = 7;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 11;
-       layout.dac_linearity[ 0 ] = 10;
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 5;
-       layout.dac_linearity[ 1 ] = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_daqcard_6024e( calibration_setup_t *setup )
-{
-       ni_caldac_layout_t layout;
-
-       init_ni_caldac_layout( &layout );
-
-       layout.adc_pregain_offset = 0;
-       layout.adc_postgain_offset = 4;
-       layout.adc_gain = 2;
-       //layout.adc_unip_offset = 7;
-       layout.dac_offset[ 0 ] = 6;
-       layout.dac_gain[ 0 ] = 3;
-       //layout.dac_linearity[ 0 ] = 10;
-       layout.dac_offset[ 1 ] = 1;
-       layout.dac_gain[ 1 ] = 5;
-       //layout.dac_linearity[ 1 ] = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_daqcard_6036e( calibration_setup_t *setup )
-{
-       ni_caldac_layout_t layout;
-
-       if( comedi_get_version_code( setup->dev ) <= COMEDI_VERSION_CODE( 0, 7, 68 ) )
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.69 or later\n"
-                "for this calibration to work properly\n" );
-       }
-
-       init_ni_caldac_layout( &layout );
-
-       layout.adc_pregain_offset = 0;
-       layout.adc_pregain_offset_fine = 8;
-       layout.adc_postgain_offset = 4;
-       layout.adc_gain = 2;
-
-       layout.dac_offset[0] = 6;
-       layout.dac_gain[0] = 7;
-       layout.dac_gain_fine[ 0 ] = 11;
-       layout.dac_linearity[0] = 10;
-
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 3;
-       layout.dac_gain_fine[ 1 ] = 5;
-       layout.dac_linearity[1] = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static int cal_ni_at_mio_64e_3( calibration_setup_t *setup )
-{
-       ni_caldac_layout_t layout;
-
-       if( comedi_get_version_code( setup->dev ) <= COMEDI_VERSION_CODE( 0, 7, 68 ) )
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.69 or later\n"
-                "for this calibration to work properly\n" );
-       }
-
-       init_ni_caldac_layout( &layout );
-       
-       layout.adc_pregain_offset = 8;
-       layout.adc_postgain_offset = 4;
-       layout.adc_gain = 2;
-
-       layout.dac_offset[0] = 6;
-       layout.dac_gain[0] = 14;
-       layout.dac_linearity[0] = 10;
-
-       layout.dac_offset[ 1 ] = 9;
-       layout.dac_gain[ 1 ] = 5;
-       layout.dac_linearity[1] = 1;
-
-       return cal_ni_generic( setup, &layout );
-}
-
-static void prep_adc_caldacs_generic( calibration_setup_t *setup,
-       const ni_caldac_layout_t *layout, unsigned int range )
-{
-       int retval;
-
-       if( setup->old_calibration == NULL )
-       {
-               reset_caldac( setup, layout->adc_pregain_offset );
-               reset_caldac( setup, layout->adc_postgain_offset );
-               reset_caldac( setup, layout->adc_gain );
-               reset_caldac( setup, layout->adc_pregain_offset_fine );
-               reset_caldac( setup, layout->adc_postgain_offset_fine );
-               reset_caldac( setup, layout->adc_gain_fine );
-               reset_caldac( setup, layout->adc_unip_offset );
-               reset_caldac( setup, layout->adc_unip_offset_fine );
-       }else
-       {
-               retval = comedi_apply_parsed_calibration( setup->dev, setup->ad_subdev,
-                       0, range, AREF_GROUND, setup->old_calibration );
-               if( retval < 0 )
-               {
-                       DPRINT( 0, "Failed to apply existing calibration, reseting adc caldacs.\n" );
-                       reset_caldac( setup, layout->adc_pregain_offset );
-                       reset_caldac( setup, layout->adc_postgain_offset );
-                       reset_caldac( setup, layout->adc_gain );
-                       reset_caldac( setup, layout->adc_pregain_offset_fine );
-                       reset_caldac( setup, layout->adc_postgain_offset_fine );
-                       reset_caldac( setup, layout->adc_gain_fine );
-                       reset_caldac( setup, layout->adc_unip_offset );
-                       reset_caldac( setup, layout->adc_unip_offset_fine );
-               }
-       }
-}
-
-static void prep_dac_caldacs_generic( calibration_setup_t *setup,
-       const ni_caldac_layout_t *layout, unsigned int channel, unsigned int range )
-{
-       int retval;
-
-       if( setup->da_subdev < 0 ) return;
-
-       if( setup->old_calibration == NULL )
-       {
-               reset_caldac( setup, layout->dac_offset[ channel ] );
-               reset_caldac( setup, layout->dac_offset_fine[ channel ] );
-               reset_caldac( setup, layout->dac_gain[ channel ] );
-               reset_caldac( setup, layout->dac_gain_fine[ channel ] );
-               reset_caldac( setup, layout->dac_linearity[ channel ] );
-       }else
-       {
-               retval = comedi_apply_parsed_calibration( setup->dev, setup->da_subdev,
-                       channel, range, AREF_GROUND, setup->old_calibration );
-               if( retval < 0 )
-               {
-                       DPRINT( 0, "Failed to apply existing calibration, reseting dac caldacs.\n" );
-                       reset_caldac( setup, layout->dac_offset[ channel ] );
-                       reset_caldac( setup, layout->dac_offset_fine[ channel ] );
-                       reset_caldac( setup, layout->dac_gain[ channel ] );
-                       reset_caldac( setup, layout->dac_gain_fine[ channel ] );
-                       reset_caldac( setup, layout->dac_linearity[ channel ] );
-               }
-       }
-}
-
-static void prep_adc_for_dac( calibration_setup_t *setup, int observable )
-{
-       unsigned int adc_range;
-       int chanspec;
-
-       if( observable < 0 ) return;
-
-       chanspec = setup->observables[ observable ].observe_insn.chanspec;
-       adc_range = CR_RANGE( chanspec );
-
-       comedi_apply_parsed_calibration( setup->dev, setup->ad_subdev,
-               0, adc_range, 0, setup->new_calibration );
-}
-
-static int cal_ni_generic( calibration_setup_t *setup, const ni_caldac_layout_t *layout )
-{
-       comedi_calibration_setting_t *current_cal;
-       int retval;
-       int num_ai_ranges;
-       int range;
-       int ai_unipolar_lowgain, ai_bipolar_lowgain;
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       assert( num_ai_ranges > 0 );
-
-       ai_bipolar_lowgain = get_bipolar_lowgain( setup->dev, setup->ad_subdev );
-       ai_unipolar_lowgain = get_unipolar_lowgain( setup->dev, setup->ad_subdev );
-
-       prep_adc_caldacs_generic( setup, layout, ai_bipolar_lowgain );
-
-       current_cal = sc_alloc_calibration_setting( setup );
-       current_cal->subdevice = setup->ad_subdev;
-       reset_caldac( setup, layout->adc_gain_fine );
-       generic_do_relative( setup, current_cal, ni_zero_offset_low,
-               ni_reference_low, layout->adc_gain );
-       reset_caldac( setup, layout->adc_postgain_offset_fine );
-       generic_do_relative( setup, current_cal, ni_zero_offset_low,
-               ni_zero_offset_high, layout->adc_postgain_offset );
-       generic_do_relative( setup, current_cal, ni_zero_offset_low,
-               ni_zero_offset_high, layout->adc_postgain_offset_fine );
-       reset_caldac( setup, layout->adc_pregain_offset_fine );
-       generic_do_cal( setup, current_cal, ni_zero_offset_high, layout->adc_pregain_offset );
-       generic_do_relative( setup, current_cal, ni_zero_offset_low,
-               ni_reference_low, layout->adc_gain_fine );
-       generic_do_cal( setup, current_cal, ni_zero_offset_high,
-               layout->adc_pregain_offset_fine );
-       sc_push_channel( current_cal, SC_ALL_CHANNELS );
-       sc_push_aref( current_cal, SC_ALL_AREFS );
-       if( layout->adc_unip_offset >= 0 )
-       {
-               sc_push_range( current_cal, SC_ALL_RANGES );
-       }else
-       {
-               for( range = 0; range < num_ai_ranges; range++ )
-               {
-                       if( is_bipolar( setup->dev, setup->ad_subdev, 0, range ) )
-                               sc_push_range( current_cal, range );
-               }
-       }
-
-       /* do seperate unipolar calibration if appropriate */
-       if( ai_unipolar_lowgain >= 0 )
-       {
-               current_cal = sc_alloc_calibration_setting( setup );
-               current_cal->subdevice = setup->ad_subdev;
-               if( layout->adc_unip_offset >= 0 )
-               {
-                       reset_caldac( setup, layout->adc_unip_offset_fine );
-                       generic_do_cal( setup, current_cal, ni_unip_zero_offset_high,
-                               layout->adc_unip_offset );
-                       generic_do_cal( setup, current_cal, ni_unip_zero_offset_high,
-                               layout->adc_unip_offset_fine );
-               /* if we don't have a unipolar offset caldac, do a fully
-                * independent calibration for unipolar ranges */
-               }else
-               {
-                       prep_adc_caldacs_generic( setup, layout, ai_unipolar_lowgain );
-                       generic_peg( setup, ni_unip_zero_offset_low,
-                               layout->adc_pregain_offset, 1 );
-                       generic_peg( setup, ni_unip_zero_offset_low,
-                               layout->adc_postgain_offset, 1 );
-                       reset_caldac(setup, layout->adc_gain_fine);
-                       generic_do_relative( setup, current_cal, ni_unip_zero_offset_low,
-                               ni_unip_reference_low, layout->adc_gain );
-                       reset_caldac(setup, layout->adc_postgain_offset_fine);
-                       generic_do_relative( setup, current_cal, ni_unip_zero_offset_low,
-                               ni_unip_zero_offset_high, layout->adc_postgain_offset );
-                       generic_do_relative( setup, current_cal, ni_unip_zero_offset_low,
-                               ni_unip_zero_offset_high, layout->adc_postgain_offset_fine );
-                       reset_caldac( setup, layout->adc_pregain_offset_fine );
-                       generic_do_cal( setup, current_cal, ni_unip_zero_offset_high,
-                               layout->adc_pregain_offset );
-                       generic_do_relative( setup, current_cal, ni_unip_zero_offset_low,
-                               ni_unip_reference_low, layout->adc_gain_fine );
-                       generic_do_cal( setup, current_cal, ni_unip_zero_offset_high,
-                               layout->adc_pregain_offset_fine );
-               }
-               for( range = 0; range < num_ai_ranges; range++ )
-               {
-                       if( is_unipolar( setup->dev, setup->ad_subdev, 0, range ) )
-                               sc_push_range( current_cal, range );
-               }
-               sc_push_channel( current_cal, SC_ALL_CHANNELS );
-               sc_push_aref( current_cal, SC_ALL_AREFS );
-       }
-       if( setup->da_subdev >= 0 && setup->do_output )
-       {
-               unsigned int channel, range;
-               int ao_unipolar_lowgain = get_unipolar_lowgain( setup->dev, setup->da_subdev );
-               int ao_bipolar_lowgain = get_bipolar_lowgain( setup->dev, setup->da_subdev );
-               int num_ao_ranges;
-
-               for( channel = 0; channel < 2; channel++ )
-               {
-                       num_ao_ranges = comedi_get_n_ranges( setup->dev, setup->da_subdev, channel );
-                       prep_dac_caldacs_generic( setup, layout, channel, ao_bipolar_lowgain );
-                       prep_adc_for_dac( setup, ni_ao_reference( channel ) );
-
-                       current_cal = sc_alloc_calibration_setting( setup );
-                       current_cal->subdevice = setup->da_subdev;
-                       generic_do_linearity( setup, current_cal, ni_ao_zero_offset( channel ),
-                               ni_ao_mid_linearity( channel ), ni_ao_reference( channel ),
-                               layout->dac_linearity[ channel ] );
-                       reset_caldac(setup, layout->dac_offset_fine[channel]);
-                       generic_do_cal( setup, current_cal, ni_ao_zero_offset( channel ),
-                               layout->dac_offset[ channel ] );
-                       generic_do_cal( setup, current_cal, ni_ao_zero_offset( channel ),
-                               layout->dac_offset_fine[ channel ] );
-                       reset_caldac( setup, layout->dac_gain_fine[ channel ] );
-                       generic_do_cal( setup, current_cal, ni_ao_reference( channel ),
-                               layout->dac_gain[ channel ] );
-                       generic_do_cal( setup, current_cal, ni_ao_reference( channel ),
-                               layout->dac_gain_fine[ channel ] );
-                       sc_push_channel( current_cal, channel );
-                       for( range = 0; range < num_ao_ranges; range++ )
-                       {
-                               if( is_bipolar( setup->dev, setup->da_subdev, channel, range ) )
-                                       sc_push_range( current_cal, range );
-                       }
-                       sc_push_aref( current_cal, SC_ALL_AREFS );
-
-                       if( ao_unipolar_lowgain >= 0 )
-                       {
-                               prep_dac_caldacs_generic( setup, layout, channel, ao_unipolar_lowgain );
-
-                               current_cal = sc_alloc_calibration_setting( setup );
-                               current_cal->subdevice = setup->da_subdev;
-                               generic_do_linearity( setup, current_cal, ni_ao_unip_low_linearity( channel ),
-                                       ni_ao_unip_mid_linearity( channel ), ni_ao_unip_reference( channel ),
-                                       layout->dac_linearity[ channel ] );
-                               reset_caldac( setup, layout->dac_offset_fine[ channel ] );
-                               generic_do_cal( setup, current_cal, ni_ao_unip_zero_offset( channel),
-                                       layout->dac_offset[ channel ] );
-                               generic_do_cal( setup, current_cal, ni_ao_unip_zero_offset( channel),
-                                       layout->dac_offset_fine[ channel ] );
-                               reset_caldac( setup, layout->dac_gain_fine[ channel ] );
-                               generic_do_cal( setup, current_cal, ni_ao_unip_reference( channel ),
-                                       layout->dac_gain[ channel ] );
-                               generic_do_cal( setup, current_cal, ni_ao_unip_reference( channel ),
-                                       layout->dac_gain_fine[ channel ] );
-                               sc_push_channel( current_cal, channel );
-                               for( range = 0; range < num_ao_ranges; range++ )
-                               {
-                                       if( is_unipolar( setup->dev, setup->da_subdev, channel, range ) )
-                                               sc_push_range( current_cal, range );
-                               }
-                               sc_push_aref( current_cal, SC_ALL_AREFS );
-                       }
-               }
-       }
-
-       retval = write_calibration_file( setup );
-
-       return retval;
-}
-
-static double ni_get_reference( calibration_setup_t *setup, int lsb_loc,int msb_loc)
-{
-       int lsb,msb;
-       int16_t uv;
-       double ref;
-
-       lsb=read_eeprom( setup, lsb_loc );
-       msb=read_eeprom( setup, msb_loc );
-       assert( lsb >=0 && msb >= 0 );
-       DPRINT(0,"eeprom reference lsb=%d msb=%d\n", lsb, msb);
-
-       uv = ( lsb & 0xff ) | ( ( msb << 8 ) & 0xff00 );
-       ref=5.000+1.0e-6*uv;
-       DPRINT(0, "resulting reference voltage: %g\n", ref );
-       if( fabs( ref - 5.0 ) > 0.005 )
-               DPRINT( 0, "WARNING: eeprom indicates reference is more than 5mV away\n"
-                       "from 5V.  Possible bad eeprom address?\n" );
-
-       return ref;
-}
-
-/****************
- NI 671x and 673x support
- **************/
-
-static const int channels_per_ad8804 = 16;
-
-static inline int ni67xx_ao_gain_caldac(unsigned int ao_channel)
-{
-       int ad8804_gain_channels[4] = {8, 2, 11, 5};
-       int caldac_channel = ad8804_gain_channels[ao_channel % 4];
-       int caldac_index = ao_channel / 4;
-       /* just guessing that second ad8804 is works for ao channels 4-7
-        * the same as the first ad8804 works for ao channels 0-3 */
-       return caldac_index * channels_per_ad8804 + caldac_channel;
-}
-static inline int ni67xx_ao_linearity_caldac(unsigned int ao_channel)
-{
-       int ad8804_linearity_channels[4] = {4, 10, 1, 0};
-       int caldac_channel = ad8804_linearity_channels[ao_channel % 4];
-       int caldac_index = ao_channel / 4;
-
-       return caldac_index * channels_per_ad8804 + caldac_channel;
-}
-static inline int ni67xx_ao_offset_caldac(unsigned int ao_channel)
-{
-       int ad8804_offset_channels[4] = {7, 6, 9, 3};
-       int caldac_channel = ad8804_offset_channels[ao_channel % 4];
-       int caldac_index = ao_channel / 4;
-
-       return caldac_index * channels_per_ad8804 + caldac_channel;
-}
-
-static int ni67xx_ao_ground_observable_index( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ao_range )
-{
-       return 3 * channel + 0;
-}
-
-static int ni67xx_ao_mid_observable_index( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ao_range )
-{
-       return 3 * channel + 1;
-}
-
-static int ni67xx_ao_high_observable_index( const calibration_setup_t *setup,
-       unsigned int channel, unsigned int ao_range )
-{
-       return 3 * channel + 2;
-}
-
-static const double ni67xx_unitless_adc_offset = 0.5;
-
-/* determine conversion factor between actual voltage and
- * interval [0,1) returned by reads from the calibration adc
- * subdevice.
- */
-static double ni67xx_unitless_adc_slope(calibration_setup_t *setup)
-{
-       double reference_in_volts;
-       double reference_unitless;
-       double slope;
-       comedi_insn insn;
-       lsampl_t data;
-       comedi_range *range;
-       static const int maxdata = 0x10000;
-       int retval;
-
-       if(ni_board(setup)->ref_eeprom_lsb >= 0 &&
-               ni_board(setup)->ref_eeprom_msb >= 0)
-       {
-               reference_in_volts = ni_get_reference(setup,
-                       ni_board(setup)->ref_eeprom_lsb, ni_board(setup)->ref_eeprom_msb );
-       }else
-       {
-               DPRINT( 0, "WARNING: unknown eeprom address for reference voltage\n"
-                       "correction.  This might be fixable if you send us an eeprom dump\n"
-                       "(see the demo/eeprom_dump program).\n");
-               reference_in_volts = 5.0;
-       }
-
-       memset(&insn, 0, sizeof(insn));
-       insn.insn = INSN_READ;
-       insn.n = 1;
-       insn.subdev = setup->ad_subdev;
-       insn.data = &data;
-       insn.chanspec = CR_PACK(0, 0, AREF_GROUND) | CR_ALT_SOURCE;
-       retval = comedi_do_insn(setup->dev, &insn);
-       assert(retval >= 0);
-
-       range = comedi_get_range(setup->dev, setup->ad_subdev, 0, 0);
-       assert( range );
-       reference_unitless = comedi_to_phys(data, range, maxdata);
-
-       slope = (reference_unitless - ni67xx_unitless_adc_offset) / reference_in_volts;
-
-       return slope;
-}
-
-/* calibration adc uses RANGE_UNKNOWN, so it will return a value from
-   0.0 to 1.0 instead of a voltage, so we need to renormalize. */
-static void ni67xx_set_target( calibration_setup_t *setup, int obs, double target, double slope)
-{
-       set_target(setup, obs, target);
-       /* convert target from volts to interval [0,1) which calibration
-        * adc returns */
-       setup->observables[obs].target *= slope;
-       setup->observables[obs].target += ni67xx_unitless_adc_offset;
-}
-
-static void ni67xx_setup_observables( calibration_setup_t *setup )
-{
-       comedi_insn tmpl, po_tmpl;
-       observable *o;
-       int num_ao_channels;
-       int i;
-       double slope;
-
-       slope = ni67xx_unitless_adc_slope(setup);
-
-       /* calibration adc is very slow (15HZ) but accurate, so only sample a few times */
-       setup->sv_order = 1;
-
-       num_ao_channels = comedi_get_n_channels(setup->dev, setup->da_subdev);
-       assert(num_ao_channels >= 0);
-
-       memset( &tmpl, 0, sizeof(tmpl) );
-       tmpl.insn = INSN_READ;
-       tmpl.n = 1;
-       tmpl.subdev = setup->ad_subdev;
-
-       memset( &po_tmpl, 0, sizeof(po_tmpl) );
-       po_tmpl.insn = INSN_WRITE;
-       po_tmpl.n = 1;
-       po_tmpl.subdev = setup->da_subdev;
-
-       setup->n_observables = 0;
-
-       for(i = 0; i < num_ao_channels; i++)
-       {
-               o = setup->observables + ni67xx_ao_ground_observable_index( setup,
-                       i, 0);
-               o->reference_source = -1;
-               assert( o->name == NULL );
-               asprintf(&o->name, "dac%i ground, ground referenced", i);
-               o->preobserve_insn = po_tmpl;
-               o->preobserve_insn.chanspec = CR_PACK(i, 0, AREF_GROUND);
-               o->preobserve_insn.data = o->preobserve_data;
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK(i, 0, AREF_GROUND);
-               ni67xx_set_target(setup, ni67xx_ao_ground_observable_index(setup, i, 0), 0.0, slope);
-               setup->n_observables++;
-
-               o = setup->observables + ni67xx_ao_mid_observable_index( setup,
-                       i, 0);
-               o->reference_source = -1;
-               assert( o->name == NULL );
-               asprintf(&o->name, "dac%i mid, ground referenced", i);
-               o->preobserve_insn = po_tmpl;
-               o->preobserve_insn.chanspec = CR_PACK(i, 0, AREF_GROUND);
-               o->preobserve_insn.data = o->preobserve_data;
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK(i, 0, AREF_GROUND);
-               ni67xx_set_target(setup, ni67xx_ao_mid_observable_index(setup, i, 0), 4.0, slope);
-               setup->n_observables++;
-
-               o = setup->observables + ni67xx_ao_high_observable_index( setup, i, 0);
-               o->reference_source = -1;
-               assert( o->name == NULL );
-               asprintf(&o->name, "dac%i high, ground referenced", i);
-               o->preobserve_insn = po_tmpl;
-               o->preobserve_insn.chanspec = CR_PACK( i, 0, AREF_GROUND );
-               o->preobserve_insn.data = o->preobserve_data;
-               o->observe_insn = tmpl;
-               o->observe_insn.chanspec = CR_PACK(i, 0, AREF_GROUND);
-               ni67xx_set_target(setup, ni67xx_ao_high_observable_index(setup, i, 0), 8.0, slope);
-               setup->n_observables++;
-       }
-
-       return;
-}
-
-static int cal_ni_pci_6711(calibration_setup_t *setup)
-{
-       generic_layout_t layout;
-       
-       if( comedi_get_version_code( setup->dev ) <= COMEDI_VERSION_CODE(0, 7, 69))
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.69 or later\n"
-                "for this calibration to work properly\n" );
-       }
-       init_generic_layout( &layout );
-       layout.dac_gain = ni67xx_ao_gain_caldac;
-       layout.dac_linearity = ni67xx_ao_linearity_caldac;
-       layout.dac_offset = ni67xx_ao_offset_caldac;
-       layout.dac_high_observable = ni67xx_ao_high_observable_index;
-       layout.dac_mid_observable = ni67xx_ao_mid_observable_index;
-       layout.dac_ground_observable = ni67xx_ao_ground_observable_index;
-       layout.dac_fractional_tolerance = get_tolerance( setup, setup->da_subdev, 1.0 );
-       return generic_cal_ao(setup, &layout);
-}
-
diff --git a/comedi_calibrate/ni_labpc.c b/comedi_calibrate/ni_labpc.c
deleted file mode 100644 (file)
index e89db38..0000000
+++ /dev/null
@@ -1,256 +0,0 @@
-/*
-   calibration support for NI labpc and compatible boards
-
-   copyright (C) 2003 by Frank Mori Hess
-
- */
-
-/***************************************************************************
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU Lesser General Public License as        *
- *   published by                                                          *
- *   the Free Software Foundation; either version 2.1 of the License, or   *
- *   (at your option) any later version.                                   *
- *                                                                         *
- ***************************************************************************/
-
-#define _GNU_SOURCE
-
-#include <stdio.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <errno.h>
-#include <getopt.h>
-#include <ctype.h>
-#include <math.h>
-#include <stdlib.h>
-#include <string.h>
-#include <assert.h>
-
-#include "calib.h"
-
-char ni_labpc_id[] = "$Id$";
-
-int ni_labpc_setup( calibration_setup_t *setup , const char *device_name );
-static int cal_ni_labpc( calibration_setup_t *setup );
-
-enum labpc_caldacs
-{
-       DAC0_GAIN = 1,
-       ADC_OFFSET_FINE = 2,
-       DAC1_GAIN = 5,
-       ADC_GAIN = 6,
-       ADC_OFFSET_COARSE_ALT = 7,
-       DAC1_OFFSET = 9,
-       ADC_POSTGAIN_OFFSET = 10,
-       DAC0_OFFSET_ALT = 11,
-       ADC_OFFSET_COARSE = 12,
-       DAC0_OFFSET = 13,
-};
-static inline unsigned int DAC_OFFSET( unsigned int channel )
-{
-       if( channel ) return DAC1_OFFSET;
-       else return DAC0_OFFSET;
-}
-static inline unsigned int DAC_GAIN( unsigned int channel )
-{
-       if( channel ) return DAC1_GAIN;
-       else return DAC0_GAIN;
-}
-
-int ni_labpc_setup( calibration_setup_t *setup , const char *device_name )
-{
-       if( setup->caldac_subdev < 0 )
-       {
-               fprintf( stderr, "no caldac subdevice found\n");
-               return -1;
-       }
-       setup->status = STATUS_DONE;
-       setup->do_cal = cal_ni_labpc;
-       setup_caldacs( setup, setup->caldac_subdev );
-
-       return 0;
-}
-
-
-/* load analog input caldacs from eeprom values (depend on range used) */
-static void labpc_grab_ai_calibration( calibration_setup_t *setup, unsigned int range )
-{
-       comedi_calibration_setting_t *current_cal;
-       /* points to (end of) analog input bipolar calibration values */
-       const int ai_bip_frame = read_eeprom( setup, 127 );
-       enum offset_indices
-       {
-               coarse_offset_index = 0,
-               fine_offset_index = -1,
-       };
-       /* points to (end of) analog input unipolar calibration values */
-       const int ai_unip_frame = read_eeprom( setup, 126 );
-       /* points to (end of) analog input bipolar calibration values */
-       const int bip_gain_frame = read_eeprom( setup, 123 );
-       /* points to (end of) analog input bipolar calibration values */
-       const int unip_gain_frame = read_eeprom( setup, 122 );
-       /* points to (end of) analog input bipolar calibration values */
-       const int bip_offset_frame = read_eeprom( setup, 121 );
-       /* points to (end of) analog input bipolar calibration values */
-       const int unip_offset_frame = read_eeprom( setup, 120 );
-       int ai_frame, gain_frame, offset_frame;
-       /* eeprom offsets by range */
-       int range_to_index[ 14 ] =
-       {
-               0,
-               -2,
-               -3,
-               -4,
-               -5,
-               -6,
-               -7,
-               0,
-               -2,
-               -3,
-               -4,
-               -5,
-               -6,
-               -7,
-       };
-       int value;
-
-       if( is_unipolar( setup->dev, setup->ad_subdev, 0, range ) )
-       {
-               ai_frame = ai_unip_frame;
-               gain_frame = unip_gain_frame;
-               offset_frame = unip_offset_frame;
-       }else
-       {
-               ai_frame = ai_bip_frame;
-               gain_frame = bip_gain_frame;
-               offset_frame = bip_offset_frame;
-       }
-       assert( ai_frame >=0 && gain_frame >= 0 && offset_frame >= 0 );
-
-       current_cal = sc_alloc_calibration_setting( setup );
-
-       /* load coarse offset */
-       value = read_eeprom( setup, ai_frame + coarse_offset_index );
-       assert( value >= 0 );
-       update_caldac( setup, ADC_OFFSET_COARSE, value );
-       sc_push_caldac( current_cal, setup->caldacs[ ADC_OFFSET_COARSE ] );
-       update_caldac( setup, ADC_OFFSET_COARSE_ALT, value );
-       sc_push_caldac( current_cal, setup->caldacs[ ADC_OFFSET_COARSE_ALT ] );
-
-       /* load fine offset */
-       value = read_eeprom( setup, ai_frame + fine_offset_index );
-       assert( value >= 0 );
-       update_caldac( setup, ADC_OFFSET_FINE, value );
-       sc_push_caldac( current_cal, setup->caldacs[ ADC_OFFSET_FINE ] );
-
-       /* load postgain offset */
-       value = read_eeprom( setup, offset_frame + range_to_index[ range ] );
-       assert( value >= 0 );
-       update_caldac( setup, ADC_POSTGAIN_OFFSET, value );
-       sc_push_caldac( current_cal, setup->caldacs[ ADC_POSTGAIN_OFFSET ] );
-
-       /* load gain */
-       value = read_eeprom( setup, gain_frame + range_to_index[ range ] );
-       assert( value >= 0 );
-       update_caldac( setup, ADC_GAIN, value );
-       sc_push_caldac( current_cal, setup->caldacs[ ADC_GAIN ] );
-
-       current_cal->subdevice = setup->ad_subdev;
-       sc_push_channel( current_cal, SC_ALL_CHANNELS );
-       sc_push_range( current_cal, range );
-       sc_push_aref( current_cal, SC_ALL_AREFS );
-
-       DPRINT( 0, "loaded adc range %i calibration from eeprom\n", range );
-}
-
-static int ao_offset_index( unsigned int channel )
-{
-       if( channel ) return -2;
-       else return 0;
-}
-
-static int ao_gain_index( unsigned int channel )
-{
-       if( channel ) return -3;
-       else return -1;
-}
-
-/* load analog output caldacs from eeprom values (depend on range used) */
-static void labpc_grab_ao_calibration( calibration_setup_t *setup,
-       unsigned int channel, unsigned int range)
-{
-       comedi_calibration_setting_t *current_cal;
-       /* points to (end of) analog output bipolar calibration values */
-       int ao_bip_frame = read_eeprom( setup, 125 );
-       /* points to (end of) analog output bipolar calibration values */
-       int ao_unip_frame = read_eeprom( setup, 124 );
-       int ao_frame;
-       int value;
-
-       current_cal = sc_alloc_calibration_setting( setup );
-
-       if( is_unipolar( setup->dev, setup->da_subdev, 0, range ) )
-               ao_frame = ao_unip_frame;
-       else
-               ao_frame = ao_bip_frame;
-       assert( ao_frame >= 0 );
-
-       /* load offset */
-       value = read_eeprom( setup, ao_frame + ao_offset_index( channel ) );
-       assert( value >= 0 );
-       update_caldac( setup, DAC_OFFSET( channel ), value );
-       sc_push_caldac( current_cal, setup->caldacs[ DAC_OFFSET( channel ) ] );
-       if( channel == 0 )
-       {
-               update_caldac( setup, DAC0_OFFSET_ALT, value );
-               sc_push_caldac( current_cal, setup->caldacs[ DAC0_OFFSET_ALT ] );
-       }
-
-       // load gain calibration
-       value = read_eeprom( setup, ao_frame + ao_gain_index( channel ) );
-       assert( value >= 0 );
-       update_caldac( setup, DAC_GAIN( channel ), value );
-       sc_push_caldac( current_cal, setup->caldacs[ DAC_GAIN( channel ) ] );
-
-       current_cal->subdevice = setup->da_subdev;
-       sc_push_channel( current_cal, channel );
-       sc_push_range( current_cal, range );
-       sc_push_aref( current_cal, SC_ALL_AREFS );
-
-       DPRINT( 0, "loaded dac channel %i range %i calibration from eeprom\n",
-               channel, range );
-}
-
-
-static int cal_ni_labpc( calibration_setup_t *setup )
-{
-       int range, channel, num_ai_ranges, num_ao_ranges;
-
-       if( comedi_get_version_code( setup->dev ) <= COMEDI_VERSION_CODE( 0, 7, 66 ) )
-       {
-               DPRINT(0, "WARNING: you need comedi driver version 0.7.67 or later\n"
-                "for this calibration to work properly\n" );
-       }
-
-       num_ai_ranges = comedi_get_n_ranges( setup->dev, setup->ad_subdev, 0 );
-       assert( num_ai_ranges > 0 );
-       num_ao_ranges = comedi_get_n_ranges( setup->dev, setup->da_subdev, 0 );
-       assert( num_ao_ranges > 0 );
-
-       for( range = 0; range < num_ai_ranges; range++ )
-               labpc_grab_ai_calibration( setup, range );
-
-       if( setup->da_subdev >= 0 && setup->do_output )
-       {
-               for( channel = 0; channel < 2; channel++ )
-               {
-                       for( range = 0; range < num_ao_ranges; range++ )
-                               labpc_grab_ao_calibration( setup, channel, range );
-               }
-       }
-
-       return write_calibration_file( setup );
-}
-
diff --git a/comedi_calibrate/ni_m_series.c b/comedi_calibrate/ni_m_series.c
deleted file mode 100644 (file)
index 1911e3d..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-/*
-   calibration support for NI m-series boards
-
-   copyright (C) 2003, 2006 by Frank Mori Hess
-
- */
-
-/***************************************************************************
- *                                                                         *
- *   This program is free software; you can redistribute it and/or modify  *
- *   it under the terms of the GNU Lesser General Public License as        *
- *   published by                                                          *
- *   the Free Software Foundation; either version 2.1 of the License, or   *
- *   (at your option) any later version.                                   *
- *                                                                         *
- ***************************************************************************/
-
-#define _GNU_SOURCE
-
-#include <stdio.h>
-#include <stdint.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <errno.h>
-#include <getopt.h>
-#include <ctype.h>
-#include <math.h>
-#include <stdlib.h>
-#include <string.h>
-#include <assert.h>
-
-#include "calib.h"
-
-char ni_m_series_id[] = "$Id$";
-
-int ni_m_series_setup(calibration_setup_t *setup , const char *device_name);
-static int cal_ni_m_series(calibration_setup_t *setup);
-
-struct board_struct{
-       char *name;
-       int status;
-};
-
-static struct board_struct boards[]={
-       { "pci-6289", STATUS_UNKNOWN},
-};
-
-static const int n_boards = sizeof(boards) / sizeof(boards[0]);
-
-static struct board_struct* ni_board(calibration_setup_t *setup)
-{
-       return setup->private_data;
-}
-
-uint16_t ni_read_eeprom_u16(calibration_setup_t *setup, int offset)
-{
-       uint16_t value = read_eeprom(setup, offset) << 8;
-       value |= read_eeprom(setup, offset + 1) & 0xff;
-       return value;
-}
-
-float ni_read_eeprom_f32(calibration_setup_t *setup, int offset)
-{
-       union float_converter
-       {
-               uint32_t raw;
-               float converted;
-       };
-       union float_converter my_converter;
-       
-       assert(sizeof(float) == 4);
-       my_converter.raw = read_eeprom(setup, offset++) << 24 & 0xff000000;
-       my_converter.raw |= (read_eeprom(setup, offset++) << 16) & 0xff0000;
-       my_converter.raw |= (read_eeprom(setup, offset++) << 8) & 0xff00;
-       my_converter.raw |= read_eeprom(setup, offset++) & 0xff;
-       return my_converter.converted;
-}
-
-static void ni_m_series_setup_observables(calibration_setup_t *setup)
-{
-       static const int positive_cal_shift = 7;
-       static const int negative_cal_shift = 10;
-       enum positive_cal_source
-       {
-               POS_CAL_GROUND = 0 << positive_cal_shift,
-               POS_CAL_REF = 2 << positive_cal_shift,
-               POS_CAL_500mV = 3 << positive_cal_shift,
-               POS_CAL_2V = 4 << positive_cal_shift,
-               POS_CAL_10V = 5 << positive_cal_shift,
-               POS_CAL_AO = 7 << positive_cal_shift
-       };
-       enum negative_cal_source
-       {
-               NEG_CAL_GROUND = 0 << negative_cal_shift,
-               NEG_CAL_850mV = 2 << negative_cal_shift,
-               NEG_CAL_10V = 7 << negative_cal_shift,
-       };
-       static const int calibration_area_offset = 24;
-       int calibration_area_start;
-       static const int voltage_reference_offset = 12;
-       comedi_insn tmpl;
-       double voltage_reference;
-       observable *o = setup->observables;
-       
-       calibration_area_start = ni_read_eeprom_u16(setup, calibration_area_offset);
-       DPRINT(1, "calibration area starts at offset %i\n", calibration_area_start);
-       voltage_reference = ni_read_eeprom_f32(setup, calibration_area_start + voltage_reference_offset);
-       DPRINT(1, "eeprom says voltage reference is %g V.\n", voltage_reference);
-
-       memset(&tmpl,0,sizeof(tmpl));
-       tmpl.insn = INSN_READ;
-       tmpl.n = 1;
-       tmpl.subdev = setup->ad_subdev;
-
-       o = setup->observables;
-       
-       o->name = "ai, reference voltage source";
-       o->observe_insn = tmpl;
-       o->observe_insn.chanspec = CR_PACK(0, 0, AREF_DIFF) | CR_ALT_SOURCE | CR_ALT_FILTER;
-       o->reference_source = NEG_CAL_GROUND | POS_CAL_REF;
-       o->target = voltage_reference;
-       ++o;
-       
-       o->name = "ai, nominal 10V";
-       o->observe_insn = tmpl;
-       o->observe_insn.chanspec = CR_PACK(0, 0, AREF_DIFF) | CR_ALT_SOURCE | CR_ALT_FILTER;
-       o->reference_source = NEG_CAL_GROUND | POS_CAL_10V;
-       o->target = 10.;
-       ++o;
-
-       o->name = "ai, nominal 2V";
-       o->observe_insn = tmpl;
-       o->observe_insn.chanspec = CR_PACK(0, 0, AREF_DIFF) | CR_ALT_SOURCE | CR_ALT_FILTER;
-       o->reference_source = NEG_CAL_GROUND | POS_CAL_2V;
-       o->target = 2.;
-       ++o;
-               
-       o->name = "ai, nominal 0.5V";
-       o->observe_insn = tmpl;
-       o->observe_insn.chanspec = CR_PACK(0, 0, AREF_DIFF) | CR_ALT_SOURCE | CR_ALT_FILTER;
-       o->reference_source = NEG_CAL_GROUND | POS_CAL_500mV;
-       o->target = 0.5;
-       ++o;
-
-       o->name = "ai, ground";
-       o->observe_insn = tmpl;
-       o->observe_insn.chanspec = CR_PACK(0, 0, AREF_DIFF) | CR_ALT_SOURCE | CR_ALT_FILTER;
-       o->reference_source = NEG_CAL_GROUND | POS_CAL_GROUND;
-       o->target = 0.0;
-       ++o;
-
-       o->name = "ai, nominal -0.85V";
-       o->observe_insn = tmpl;
-       o->observe_insn.chanspec = CR_PACK(0, 0, AREF_DIFF) | CR_ALT_SOURCE | CR_ALT_FILTER;
-       o->reference_source = NEG_CAL_850mV | POS_CAL_GROUND;
-       o->target = -0.85;
-       ++o;
-
-       o->name = "ai, nominal -10V";
-       o->observe_insn = tmpl;
-       o->observe_insn.chanspec = CR_PACK(0, 0, AREF_DIFF) | CR_ALT_SOURCE | CR_ALT_FILTER;
-       o->reference_source = NEG_CAL_10V | POS_CAL_GROUND;
-       o->target = -10.;
-       ++o;
-
-       setup->n_observables = o - setup->observables;
-}
-
-int ni_m_series_setup(calibration_setup_t *setup , const char *device_name)
-{      
-       int i;
-       for(i = 0; i < n_boards; ++i)
-       {
-               if(!strcmp(device_name, boards[i].name))
-               {
-                       setup->status = boards[i].status;
-                       setup->private_data = &boards[i];
-                       setup->do_cal = &cal_ni_m_series;
-                       ni_m_series_setup_observables(setup);
-                       break;
-               }
-       }
-       if(i == n_boards) return -1;
-
-       return 0;
-}
-
-static int cal_ni_m_series(calibration_setup_t *setup)
-{
-       return 0;
-}
-
diff --git a/comedi_calibrate/other.c b/comedi_calibrate/other.c
deleted file mode 100644 (file)
index b410232..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-/*
-comedi_calibrate/other.c - functions that might move to the library
-Copyright (C) 2002  David A. Schleef <ds@schleef.org>
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of version 2 of the GNU General Public License as
-published by the Free Software Foundation.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-*/
-
-
-#include <comedilib.h>
-#include <unistd.h>
-#include <string.h>
-
-void comedi_nanodelay(comedi_t *dev, unsigned int delay)
-{
-       comedi_insn insn;
-       lsampl_t data = delay;
-       int retval;
-
-       memset(&insn, 0, sizeof(insn));
-       insn.insn = INSN_WAIT;
-       insn.n = 1;
-       insn.data = &data;
-       retval = comedi_do_insn( dev, &insn );
-       // fall back on usleep for long delays
-       if( retval < 0 )
-               usleep( delay / 1000 );
-
-       return;
-}
-
-
diff --git a/comedi_calibrate/results/DAQCard-6024E b/comedi_calibrate/results/DAQCard-6024E
deleted file mode 100644 (file)
index 13bcd0f..0000000
+++ /dev/null
@@ -1,64 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-Id: comedi_calibrate.c,v 1.36 2002/06/12 23:19:39 ds Exp 
-Driver name: ni_mio_cs
-Device name: DAQCard-6024E
-Id: ni.c,v 1.30 2002/06/12 23:19:39 ds Exp 
-Comedi version: 0.7.66
-ai, bipolar zero offset, low gain
-offset 4.62(21)e-3, target 0
-caldac[0] gain=-1.10618(49)e-4 V/bit S_min=114170 dof=254
-caldac[1] gain= V/bit S_min=inf dof=254
-caldac[2] gain=-7.51323(55)e-4 V/bit S_min=1.56203e+06 dof=254
-caldac[4] gain=-7.69042(51)e-4 V/bit S_min=99089.3 dof=254
-caldac[8] gain=-6.4(12)e-10 V/bit S_min=4701.72 dof=254
-ai, bipolar zero offset, high gain
-offset -0.0186344(18), target 0
-caldac[0] gain=-1.183542(45)e-4 V/bit S_min=4.76705e+06 dof=254
-caldac[2] gain=-2.4085(13)e-6 V/bit S_min=100923 dof=254
-caldac[4] gain=-3.8300(13)e-6 V/bit S_min=1165.14 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.745078(98), target 5
-caldac[0] gain=-1.17699(55)e-4 V/bit S_min=94250.4 dof=254
-caldac[2] gain=-1.119095(62)e-3 V/bit S_min=9.92063e+06 dof=254
-caldac[4] gain=-7.67072(51)e-4 V/bit S_min=91956.5 dof=254
-ai, unipolar zero offset, low gain
-offset 9.797314( 0), target 0
-caldac[0] gain=-1.20174(51)e-4 V/bit S_min=111385 dof=254
-caldac[1] gain=-1.28(25)e-8 V/bit S_min=3018.72 dof=254
-caldac[2] gain=-7.45864(57)e-4 V/bit S_min=5.43203e+06 dof=254
-caldac[4] gain=-7.69423(50)e-4 V/bit S_min=103966 dof=254
-caldac[5] gain=9.0(22)e-9 V/bit S_min=4066.28 dof=254
-caldac[6] gain=-1.16(24)e-8 V/bit S_min=3194.71 dof=254
-ao 0, zero offset, low gain
-offset -0.30472(13), target 0.002442
-caldac[0] gain=-1.19038(58)e-4 V/bit S_min=82414.7 dof=254
-caldac[2] gain=-8.52755(59)e-4 V/bit S_min=4.88665e+06 dof=254
-caldac[4] gain=-7.68927(54)e-4 V/bit S_min=81115.2 dof=254
-caldac[6] gain=-7.64443(53)e-4 V/bit S_min=83476.4 dof=254
-ao 0, reference voltage, low gain
-offset -0.31174(20), target -0.001221
-caldac[0] gain=-1.14856(54)e-4 V/bit S_min=104201 dof=254
-caldac[2] gain=-9.28861(60)e-4 V/bit S_min=4.81254e+06 dof=254
-caldac[3] gain=-1.08096(52)e-4 V/bit S_min=75744.9 dof=254
-caldac[4] gain=-7.69600(51)e-4 V/bit S_min=93869.3 dof=254
-caldac[6] gain=-7.65394(53)e-4 V/bit S_min=84042.7 dof=254
-ao 1, zero offset, low gain
-offset -0.212454( 0), target 0.002442
-caldac[0] gain=-1.19136(57)e-4 V/bit S_min=86134.3 dof=254
-caldac[1] gain=-8.72967(55)e-4 V/bit S_min=74993.4 dof=254
-caldac[2] gain=-7.44876(60)e-4 V/bit S_min=4.82335e+06 dof=254
-caldac[3] gain=4.94(25)e-9 V/bit S_min=32381.1 dof=254
-caldac[4] gain=-7.68712(53)e-4 V/bit S_min=88461.4 dof=254
-caldac[5] gain= V/bit S_min=inf dof=254
-caldac[6] gain= V/bit S_min=inf dof=254
-caldac[7] gain= V/bit S_min=inf dof=254
-ao 1, reference voltage, low gain
-offset -0.241758( 0), target -0.001221
-caldac[0] gain=-1.19039(55)e-4 V/bit S_min=93637.5 dof=254
-caldac[1] gain=-9.48743(53)e-4 V/bit S_min=98884.8 dof=254
-caldac[2] gain=-7.41392(63)e-4 V/bit S_min=4.35679e+06 dof=254
-caldac[4] gain=-7.67743(55)e-4 V/bit S_min=76872 dof=254
-caldac[5] gain=-1.24628(58)e-4 V/bit S_min=53604.6 dof=254
-caldac[6] gain=1.22(21)e-8 V/bit S_min=3594.81 dof=254
-caldac[7] gain=1.04(25)e-8 V/bit S_min=3897.49 dof=254
diff --git a/comedi_calibrate/results/DAQCard-6036E b/comedi_calibrate/results/DAQCard-6036E
deleted file mode 100644 (file)
index fe4105c..0000000
+++ /dev/null
@@ -1,192 +0,0 @@
-root@nblaser:~/COMEDI/programmi# comedi_calibrate
-eeprom reference lsb=193 msb=253
-resulting reference voltage: 4.99942
-Warning: device may not be not fully calibrated due to insufficient information.
-Please file a bug report at https://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing option: --verbose
-Forcing options: --reset --dump --calibrate --results
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp
-Driver name: ni_mio_cs
-Device name: DAQCard-6036E
-Id: ni.c,v 1.116 2004/05/25 00:15:34 fmhess Exp
-Comedi version: 0.7.68
-ai, bipolar zero offset, low gain
-reading 0.01458(15), target 0
-caldac[0] gain=-1.291(27)e-5 V/bit S_min=3.02742 dof=14
-caldac[2] gain=7.79(27)e-6 V/bit S_min=0.47875 dof=14
-caldac[4] gain=-7.8742(27)e-4 V/bit S_min=44.3247 dof=14
-ai, bipolar zero offset, high gain
-reading 2.142(85)e-4, target 0
-caldac[0] gain=-1.211(12)e-5 V/bit S_min=0.0896184 dof=14
-caldac[4] gain=-3.94(12)e-6 V/bit S_min=0.0120322 dof=14
-ai, bipolar voltage reference, low gain
-reading 5.038787(21), target 4.99942
-caldac[0] gain=-1.427(27)e-5 V/bit S_min=1.90854 dof=14
-caldac[2] gain=-3.8525(27)e-4 V/bit S_min=60.0839 dof=14
-caldac[4] gain=-7.8864(27)e-4 V/bit S_min=21.8159 dof=14
-ao 0, zero offset, low gain
-reading 0.020671(31), target 0.00015259
-caldac[0] gain=-1.242(35)e-5 V/bit S_min=0.877272 dof=14
-caldac[2] gain=7.98(35)e-6 V/bit S_min=0.470507 dof=14
-caldac[4] gain=-7.8747(35)e-4 V/bit S_min=23.9215 dof=14
-caldac[6] gain=2.3520(35)e-4 V/bit S_min=15.9443 dof=14
-caldac[10] gain=-1.7676(34)e-4 V/bit S_min=2.39467 dof=14
-ao 0, reference voltage, low gain
-reading 8.052253(25), target 8.00015
-caldac[0] gain=-1.459(35)e-5 V/bit S_min=0.791589 dof=14
-caldac[2] gain=-6.2068(35)e-4 V/bit S_min=168.854 dof=14
-caldac[4] gain=-7.8890(35)e-4 V/bit S_min=37.5002 dof=14
-caldac[6] gain=2.3465(35)e-4 V/bit S_min=2.53569 dof=14
-caldac[7] gain=-3.0580(35)e-4 V/bit S_min=2.02196 dof=14
-caldac[10] gain=-2.4015(35)e-4 V/bit S_min=1.53014 dof=14
-caldac[11] gain=-3.183(35)e-5 V/bit S_min=0.458829 dof=14
-ao 0, linearity (mid), low gain
-reading 4.036855(26), target 4.00015
-caldac[0] gain=-1.324(35)e-5 V/bit S_min=1.06738 dof=14
-caldac[2] gain=-3.0547(34)e-4 V/bit S_min=13.3536 dof=14
-caldac[4] gain=-7.8684(35)e-4 V/bit S_min=20.1083 dof=14
-caldac[6] gain=2.3539(34)e-4 V/bit S_min=2.51378 dof=14
-caldac[7] gain=-1.5316(35)e-4 V/bit S_min=1.00704 dof=14
-caldac[10] gain=-2.1780(35)e-4 V/bit S_min=2.93219 dof=14
-caldac[11] gain=-1.592(35)e-5 V/bit S_min=1.43679 dof=14
-ao 1, zero offset, low gain
-reading 0.024278(26), target 0.00015259
-caldac[0] gain=-1.207(35)e-5 V/bit S_min=0.615599 dof=14
-caldac[1] gain=-1.7658(36)e-4 V/bit S_min=2.31268 dof=14
-caldac[2] gain=7.64(35)e-6 V/bit S_min=0.352221 dof=14
-caldac[4] gain=-7.8727(35)e-4 V/bit S_min=26.5067 dof=14
-caldac[9] gain=2.3499(36)e-4 V/bit S_min=11.4821 dof=14
-ao 1, reference voltage, low gain
-reading 8.057690(26), target 8.00015
-caldac[0] gain=-1.463(36)e-5 V/bit S_min=1.38098 dof=14
-caldac[1] gain=-2.3991(36)e-4 V/bit S_min=4.21848 dof=14
-caldac[2] gain=-6.2159(36)e-4 V/bit S_min=191.147 dof=14
-caldac[3] gain=-3.0727(36)e-4 V/bit S_min=7.32707 dof=14
-caldac[4] gain=-7.8877(36)e-4 V/bit S_min=41.0139 dof=14
-caldac[5] gain=-3.165(36)e-5 V/bit S_min=0.641647 dof=14
-caldac[9] gain=2.3422(35)e-4 V/bit S_min=0.997272 dof=14
-ao 1, linearity (mid), low gain
-reading 4.041604(26), target 4.00015
-caldac[0] gain=-1.360(36)e-5 V/bit S_min=0.925139 dof=14
-caldac[1] gain=-2.1714(35)e-4 V/bit S_min=3.92419 dof=14
-caldac[2] gain=-3.0578(35)e-4 V/bit S_min=15.1476 dof=14
-caldac[3] gain=-1.5354(35)e-4 V/bit S_min=1.84312 dof=14
-caldac[4] gain=-7.8681(35)e-4 V/bit S_min=20.7147 dof=14
-caldac[5] gain=-1.589(36)e-5 V/bit S_min=0.579324 dof=14
-caldac[9] gain=2.3428(36)e-4 V/bit S_min=3.70475 dof=14
-WARNING: you need comedi driver version 0.7.69 or later
-for this calibration to work properly
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage
-reference, low gain
-caldac[2] set to 175
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset,
-high gain
-caldac[4] set to 153
-binary: ai, bipolar zero offset, high gain
-caldac[0] set to 136
-binary: ai, bipolar zero offset, high gain
-caldac[8] set to 129
-linearity binary: ao 0, zero offset, low gain,
-ao 0, linearity (mid), low gain,
-ao 0, reference voltage, low gain
-caldac[10] set to 156
-binary: ao 0, zero offset, low gain
-caldac[6] set to 147
-binary: ao 0, reference voltage, low gain
-caldac[7] set to 125
-binary: ao 0, reference voltage, low gain
-caldac[11] set to 134
-linearity binary: ao 1, zero offset, low gain,
-ao 1, linearity (mid), low gain,
-ao 1, reference voltage, low gain
-caldac[1] set to 181
-binary: ao 1, zero offset, low gain
-caldac[9] set to 150
-binary: ao 1, reference voltage, low gain
-caldac[3] set to 127
-binary: ao 1, reference voltage, low gain
-caldac[5] set to 125
-writing calibration to
-/usr/local/var/lib/comedi/calibrations/ni_mio_cs_DAQCard-6036E_comedi0
-ai, bipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 0, aref 3
-reading 2.76(18)e-4, target 0
-caldac[0] gain=-1.126(25)e-5 V/bit S_min=3.31708 dof=14
-caldac[2] gain=8.69(25)e-6 V/bit S_min=0.665987 dof=14
-caldac[4] gain=-7.8444(27)e-4 V/bit S_min=45.8072 dof=14
-ai, bipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 3, aref 3
-reading -0.5(85)e-6, target 0
-caldac[0] gain=-1.205(12)e-5 V/bit S_min=0.0570424 dof=14
-caldac[4] gain=-3.92(12)e-6 V/bit S_min=0.023133 dof=14
-ai, bipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 0, aref 3
-reading 4.999728(21), target 4.99942
-caldac[0] gain=-1.397(27)e-5 V/bit S_min=1.81441 dof=14
-caldac[2] gain=-3.8389(27)e-4 V/bit S_min=96.2315 dof=14
-caldac[4] gain=-7.8580(27)e-4 V/bit S_min=25.2026 dof=14
-ao 0, zero offset, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 7.9(24)e-5, target 0.00015259
-caldac[0] gain=-1.122(33)e-5 V/bit S_min=1.58412 dof=14
-caldac[2] gain=8.72(33)e-6 V/bit S_min=0.24128 dof=14
-caldac[4] gain=-7.8439(35)e-4 V/bit S_min=25.8936 dof=14
-caldac[6] gain=2.3307(35)e-4 V/bit S_min=8.15903 dof=14
-caldac[10] gain=-1.7446(35)e-4 V/bit S_min=16.9895 dof=14
-ao 0, reference voltage, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 7.999923(26), target 8.00015
-caldac[0] gain=-1.450(35)e-5 V/bit S_min=0.244981 dof=14
-caldac[2] gain=-6.1848(35)e-4 V/bit S_min=144.98 dof=14
-caldac[4] gain=-7.8415(35)e-4 V/bit S_min=25.8586 dof=14
-caldac[6] gain=2.3435(35)e-4 V/bit S_min=4.56044 dof=14
-caldac[7] gain=-3.0524(35)e-4 V/bit S_min=4.27428 dof=14
-caldac[10] gain=-2.4008(35)e-4 V/bit S_min=2.2617 dof=14
-caldac[11] gain=-3.166(36)e-5 V/bit S_min=1.04297 dof=14
-ao 0, linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 4.000050(26), target 4.00015
-caldac[0] gain=-1.333(35)e-5 V/bit S_min=1.19177 dof=14
-caldac[2] gain=-3.0458(35)e-4 V/bit S_min=43.2202 dof=14
-caldac[4] gain=-7.8399(35)e-4 V/bit S_min=11.9081 dof=14
-caldac[6] gain=2.3405(35)e-4 V/bit S_min=1.67364 dof=14
-caldac[7] gain=-1.5240(35)e-4 V/bit S_min=1.41059 dof=14
-caldac[10] gain=-2.1713(35)e-4 V/bit S_min=3.92734 dof=14
-caldac[11] gain=-1.586(35)e-5 V/bit S_min=0.914429 dof=14
-ao 1, zero offset, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading -1.11(24)e-4, target 0.00015259
-caldac[0] gain=-1.128(33)e-5 V/bit S_min=0.901 dof=14
-caldac[1] gain=-1.7443(36)e-4 V/bit S_min=12.9169 dof=14
-caldac[2] gain=8.96(34)e-6 V/bit S_min=1.00705 dof=14
-caldac[4] gain=-7.8416(35)e-4 V/bit S_min=28.7331 dof=14
-caldac[9] gain=2.3227(36)e-4 V/bit S_min=7.93342 dof=14
-ao 1, reference voltage, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 7.999863(26), target 8.00015
-caldac[0] gain=-1.458(36)e-5 V/bit S_min=0.798365 dof=14
-caldac[1] gain=-2.3965(36)e-4 V/bit S_min=3.28996 dof=14
-caldac[2] gain=-6.1842(36)e-4 V/bit S_min=140.121 dof=14
-caldac[3] gain=-3.0648(36)e-4 V/bit S_min=5.08195 dof=14
-caldac[4] gain=-7.8433(36)e-4 V/bit S_min=23.3067 dof=14
-caldac[5] gain=-3.159(36)e-5 V/bit S_min=0.430608 dof=14
-caldac[9] gain=2.3376(36)e-4 V/bit S_min=5.29201 dof=14
-ao 1, linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 3.999868(26), target 4.00015
-caldac[0] gain=-1.348(35)e-5 V/bit S_min=2.15928 dof=14
-caldac[1] gain=-2.1679(36)e-4 V/bit S_min=3.58947 dof=14
-caldac[2] gain=-3.0444(36)e-4 V/bit S_min=38.2054 dof=14
-caldac[3] gain=-1.5284(36)e-4 V/bit S_min=3.32024 dof=14
-caldac[4] gain=-7.8394(36)e-4 V/bit S_min=11.8147 dof=14
-caldac[5] gain=-1.588(36)e-5 V/bit S_min=2.05549 dof=14
-caldac[9] gain=2.3322(36)e-4 V/bit S_min=1.69652 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/DAQCard-6062E b/comedi_calibrate/results/DAQCard-6062E
deleted file mode 100644 (file)
index 634a557..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-Warning: device may not be not fully calibrated due to insufficient information.
-Please send this output to <ds@schleef.org>.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.Id: comedi_calibrate.c,v 1.57 2003/04/27 18:13:39 fmhess Exp
-Driver name: ni_mio_cs
-Device name: DAQCard-6062E
-Id: ni.c,v 1.58 2003/04/26 22:24:37 fmhess Exp
-Comedi version: 0.7.66
-ai, bipolar zero offset, low gain
-failed to apply calibration for subdev 0, channel 0, range 0, aref 3
-reading 7.71(24)e-3, target 0
-caldac[2] gain=-7.5594(23)e-4 V/bit S_min=3064.85 dof=254
-caldac[4] gain=-7.5487(23)e-4 V/bit S_min=2558.78 dof=254
-caldac[8] gain=-1.347(23)e-5 V/bit S_min=269.064 dof=254
-ai, bipolar zero offset, high gain
-failed to apply calibration for subdev 0, channel 0, range 7, aref 3
-reading 2.873(23)e-4, target 0
-caldac[0] gain=-9.6(17)e-9 V/bit S_min=247.556 dof=254
-caldac[2] gain=-3.8222(17)e-6 V/bit S_min=2184.5 dof=254
-caldac[4] gain=-3.8155(17)e-6 V/bit S_min=1260.66 dof=254
-caldac[8] gain=-1.38446(17)e-5 V/bit S_min=965.565 dof=254
-caldac[9] gain=-1.00(17)e-8 V/bit S_min=250.754 dof=254
-caldac[11] gain=-1.56(17)e-8 V/bit S_min=240.693 dof=254
-ai, bipolar voltage reference, low gain
-failed to apply calibration for subdev 0, channel 5, range 0, aref 3
-reading 5.00530(24), target 5
-caldac[2] gain=-1.15094(22)e-3 V/bit S_min=2551.54 dof=254
-caldac[4] gain=-7.6235(22)e-4 V/bit S_min=1250.06 dof=254
-caldac[8] gain=-1.257(20)e-5 V/bit S_min=250.262 dof=254
-ai, unipolar zero offset, low gain
-failed to apply calibration for subdev 0, channel 0, range 8, aref 3
-reading 0.02740(27), target 0
-caldac[2] gain=-2.03(22)e-6 V/bit S_min=217.912 dof=254
-caldac[4] gain=-7.4215(47)e-4 V/bit S_min=443.929 dof=152
-caldac[7] gain=-3.6721(36)e-4 V/bit S_min=320.056 dof=180
-caldac[8] gain=-1.336(22)e-5 V/bit S_min=236.14 dof=254
-ao 0, zero offset, low gain
-failed to apply calibration for subdev 1, channel 0, range 0, aref 0
-failed to apply calibration for subdev 0, channel 2, range 0, aref 3
-reading 6.37(28)e-3, target 0.002442
-caldac[2] gain=-7.5509(22)e-4 V/bit S_min=2962.2 dof=254
-caldac[4] gain=-7.5457(22)e-4 V/bit S_min=2498.59 dof=254
-caldac[6] gain=-7.6321(22)e-4 V/bit S_min=2476.93 dof=254
-caldac[8] gain=-1.347(22)e-5 V/bit S_min=237.534 dof=254
-caldac[10] gain=-1.0553(21)e-4 V/bit S_min=1724.72 dof=254
-ao 0, reference voltage, low gain
-failed to apply calibration for subdev 1, channel 0, range 0, aref 0
-failed to apply calibration for subdev 0, channel 6, range 0, aref 3
-reading 5.0(27)e-4, target -0.001221
-caldac[2] gain=-7.5523(23)e-4 V/bit S_min=3143.56 dof=254
-caldac[4] gain=-7.5514(23)e-4 V/bit S_min=2587.66 dof=254
-caldac[6] gain=-7.6303(23)e-4 V/bit S_min=2458.61 dof=254
-caldac[8] gain=-1.154(20)e-5 V/bit S_min=260.382 dof=254
-caldac[10] gain=-1.7793(22)e-4 V/bit S_min=1740.78 dof=254
-caldac[11] gain=-1.0584(21)e-4 V/bit S_min=1720.36 dof=254
-ao 1, zero offset, low gain
-failed to apply calibration for subdev 1, channel 1, range 0, aref 0
-failed to apply calibration for subdev 0, channel 3, range 0, aref 3
-reading 0.01404(29), target 0.002442
-caldac[1] gain=-1.1475(23)e-4 V/bit S_min=244.77 dof=254
-caldac[2] gain=-7.5724(22)e-4 V/bit S_min=3485.32 dof=254
-caldac[4] gain=-7.5504(23)e-4 V/bit S_min=2475.87 dof=254
-caldac[8] gain=-1.366(23)e-5 V/bit S_min=302.974 dof=254
-caldac[9] gain=-7.5480(22)e-4 V/bit S_min=2712.43 dof=254
-ao 1, reference voltage, low gain
-failed to apply calibration for subdev 1, channel 1, range 0, aref 0
-failed to apply calibration for subdev 0, channel 7, range 0, aref 3
-reading 0.01107(28), target -0.001221
-caldac[1] gain=-1.8390(22)e-4 V/bit S_min=2598.99 dof=254
-caldac[2] gain=-7.5662(23)e-4 V/bit S_min=3170.81 dof=254
-caldac[4] gain=-7.5494(23)e-4 V/bit S_min=2534.66 dof=254
-caldac[5] gain=-1.2041(22)e-4 V/bit S_min=768.036 dof=254
-caldac[8] gain=-1.433(24)e-5 V/bit S_min=240.557 dof=254
-caldac[9] gain=-7.5463(23)e-4 V/bit S_min=2621.58 dof=254
diff --git a/comedi_calibrate/results/DAQCard-ai-16e-4 b/comedi_calibrate/results/DAQCard-ai-16e-4
deleted file mode 100644 (file)
index 0be7310..0000000
+++ /dev/null
@@ -1,65 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-Id: comedi_calibrate.c,v 1.36 2002/06/12 23:19:39 ds Exp 
-Driver name: ni_mio_cs
-Device name: DAQCard-ai-16e-4
-Id: ni.c,v 1.34 2002/08/29 23:35:37 ds Exp 
-Comedi version: 0.7.65
-ai, bipolar zero offset, low gain
-offset 7.250(54)e-3, target 0
-caldac[0] gain=-8.709(60)e-6 V/bit S_min=12475.4 dof=254
-caldac[1] gain=-1.674098(75)e-3 V/bit S_min=25268.2 dof=254
-ai, bipolar zero offset, high gain
-offset 7.845(15)e-4, target 0
-caldac[0] gain=-1.40738(12)e-5 V/bit S_min=621.321 dof=254
-caldac[1] gain=-8.3786(12)e-6 V/bit S_min=719.216 dof=254
-caldac[2] gain=1.12(13)e-8 V/bit S_min=290.257 dof=254
-caldac[3] gain=-1.406(13)e-7 V/bit S_min=244.667 dof=254
-caldac[4] gain=5.5(13)e-9 V/bit S_min=309.627 dof=254
-caldac[5] gain=-8.1(13)e-9 V/bit S_min=270.158 dof=254
-caldac[9] gain=-6.3(13)e-9 V/bit S_min=317.243 dof=254
-ai, bipolar voltage reference, low gain
-offset 5.028083( 0), target 5
-caldac[0] gain=-7.048(60)e-6 V/bit S_min=8283.93 dof=254
-caldac[1] gain=-1.678477(75)e-3 V/bit S_min=26143.6 dof=254
-caldac[3] gain=-7.77018(74)e-4 V/bit S_min=33119.8 dof=254
-ai, unipolar zero offset, low gain
-offset nan, target 0
-caldac[1] gain=-1.67076(27)e-3 V/bit S_min=9496.76 dof=107
-caldac[2] gain=-3.7444(93)e-4 V/bit S_min=3437.91 dof=47
-caldac[3] gain=1.51141(28)e-3 V/bit S_min=8625.96 dof=107
-postgain binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset, hig
-h gain
-caldac[1] set to 129
-binary: ai, bipolar zero offset, high gain
-caldac[0] set to 181
-linear fine: ai, bipolar zero offset, high gain
-caldac[0] gain=-1.4104(51)e-5 V/bit S_min=32.4402 dof=19
-caldac[0] set to 181 (181.394)
-binary: ai, bipolar voltage reference, low gain
-caldac[3] set to 157
-linear fine: ai, bipolar voltage reference, low gain
-caldac[3] gain=-8.384(34)e-4 V/bit S_min=1541.06 dof=19
-caldac[3] set to 157 (156.837)
-linear: ai, unipolar zero offset, low gain
-caldac[2] gain=-3.8196(16)e-4 V/bit S_min=12518.3 dof=154
-caldac[2] set to 166 (166.253)
-ai, bipolar zero offset, low gain
-offset 2.328(65)e-3, target 0
-caldac[0] gain=-7.714(70)e-6 V/bit S_min=5135.79 dof=254
-caldac[1] gain=-1.665580(76)e-3 V/bit S_min=24336.8 dof=254
-caldac[3] gain=3.77(72)e-7 V/bit S_min=265.342 dof=254
-ai, bipolar zero offset, high gain
-offset 1.3(15)e-6, target 0
-caldac[0] gain=-1.39860(12)e-5 V/bit S_min=472.034 dof=254
-caldac[1] gain=-8.3336(12)e-6 V/bit S_min=473.021 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.99931(13), target 5
-caldac[0] gain=-2.4484(99)e-5 V/bit S_min=3555.75 dof=254
-caldac[1] gain=-1.669701(75)e-3 V/bit S_min=26274.3 dof=254
-caldac[3] gain=-7.76443(75)e-4 V/bit S_min=32820.1 dof=254
-ai, unipolar zero offset, low gain
-offset nan, target 0
-caldac[1] gain=-1.66313(22)e-3 V/bit S_min=10524 dof=125
-caldac[2] gain=-3.8204(16)e-4 V/bit S_min=11839.1 dof=154
-caldac[3] gain=1.50908(34)e-3 V/bit S_min=7642.08 dof=94
diff --git a/comedi_calibrate/results/DAQCard-ai-16xe-50 b/comedi_calibrate/results/DAQCard-ai-16xe-50
deleted file mode 100644 (file)
index fc80dae..0000000
+++ /dev/null
@@ -1,42 +0,0 @@
-$Id$
-Driver name: ni_mio_cs
-Device name: DAQCard-ai-16xe-50
-Comedi version: 0.7.60
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, high gain
-caldac[2] gain=1.56377(23)e-4 V/bit S_min=1670.79 dof=254
-caldac[2] gain=1.56342(29)e-6 V/bit S_min=814.731 dof=254
-caldac[2] set to 89 (88.9996)
-linear: ai, bipolar zero offset, high gain
-caldac[8] gain=2.61512(18)e-7 V/bit S_min=892.566 dof=254
-caldac[8] set to 2115 (2114.92)
-linear: ai, bipolar voltage reference, low gain
-caldac[0] gain=-3.77918(24)e-4 V/bit S_min=12815.3 dof=254
-caldac[0] set to 110 (110.428)
-linear fine: ai, bipolar voltage reference, low gain
-caldac[0] gain=-3.8386(94)e-4 V/bit S_min=78.9229 dof=19
-caldac[0] set to 104 (104.393)
-linear: ai, bipolar voltage reference, low gain
-caldac[1] gain=-1.0452(23)e-5 V/bit S_min=759.199 dof=254
-caldac[1] set to 148 (147.917)
-ai, bipolar zero offset, low gain
-offset 8.7(69)e-4, target 0
-caldac[0] gain=-1.890(21)e-6 V/bit S_min=287.296 dof=254
-caldac[2] gain=1.56695(23)e-4 V/bit S_min=1532.32 dof=254
-caldac[8] gain=2.647(13)e-7 V/bit S_min=341.08 dof=254
-ai, bipolar zero offset, high gain
-offset 9.8(41)e-7, target 0
-caldac[0] gain=-1.826(26)e-8 V/bit S_min=331.882 dof=254
-caldac[2] gain=1.56731(29)e-6 V/bit S_min=901.674 dof=254
-caldac[8] gain=2.62011(18)e-7 V/bit S_min=804.673 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.99925(68), target 5
-caldac[0] gain=-3.78224(24)e-4 V/bit S_min=12116.6 dof=254
-caldac[1] gain=-1.0397(23)e-5 V/bit S_min=785.128 dof=254
-caldac[2] gain=1.57339(23)e-4 V/bit S_min=1028.84 dof=254
-caldac[8] gain=3.113(15)e-7 V/bit S_min=414.889 dof=254
-ai, unipolar zero offset, low gain
-offset nan, target 0
-caldac[0] gain=3.73812(32)e-4 V/bit S_min=1279.24 dof=143
-caldac[1] gain=9.301(53)e-6 V/bit S_min=72.2441 dof=87
-caldac[2] gain=7.8821(22)e-5 V/bit S_min=839.616 dof=163
-caldac[8] gain=2.463(28)e-7 V/bit S_min=100.124 dof=95
diff --git a/comedi_calibrate/results/at-mio-16de-10 b/comedi_calibrate/results/at-mio-16de-10
deleted file mode 100644 (file)
index af11d4a..0000000
+++ /dev/null
@@ -1,380 +0,0 @@
-chinasuse92p4sca:/home/walt/comedi/comedi-0.7.70 # /usr/local/bin/comedi_calibrate -f /dev/comedi0
-eeprom reference lsb=216 msb=255
-resulting reference voltage: 4.99996
-Warning: device may not be not fully calibrated due to insufficient information.
-Please file a bug report at https://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing option: --verbose
-Forcing options: --reset --dump --calibrate --results
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp
-Driver name: ni_atmio
-Device name: at-mio-16de-10
-Id: ni.c,v 1.130 2004/09/09 21:43:16 fmhess Exp
-Comedi version: 0.7.70
-ai, bipolar zero offset, low gain
-reading 4.870(89)e-3, target 0
-caldac[0] gain=-6.52(12)e-5 V/bit S_min=0.990489 dof=14
-caldac[4] gain=-7.684(12)e-4 V/bit S_min=2.30115 dof=14
-ai, bipolar zero offset, high gain
-reading 7.2452(54)e-4, target 0
-caldac[0] gain=-6.34993(73)e-5 V/bit S_min=68.2233 dof=14
-caldac[2] gain=-6.01(72)e-8 V/bit S_min=0.819595 dof=14
-caldac[4] gain=-3.8534(72)e-6 V/bit S_min=1.82791 dof=14
-caldac[8] gain=-1.3240(73)e-6 V/bit S_min=1.79639 dof=14
-ai, bipolar voltage reference, low gain
-reading 5.005356(86), target 4.99996
-caldac[0] gain=-6.24(12)e-5 V/bit S_min=2.21779 dof=14
-caldac[2] gain=-3.356(12)e-4 V/bit S_min=8.00714 dof=14
-caldac[4] gain=-7.672(12)e-4 V/bit S_min=4.01159 dof=14
-ai, unipolar zero offset, low gain
-reading 5.700(90)e-3, target 0.002442
-caldac[0] gain=-5.86(11)e-5 V/bit S_min=20.1922 dof=14
-caldac[2] gain=3.3585(58)e-4 V/bit S_min=78987.6 dof=14
-caldac[4] gain=-4.4847(67)e-4 V/bit S_min=79203.3 dof=14
-caldac[7] gain=-4.3797(67)e-4 V/bit S_min=74027.9 dof=14
-ai, unipolar zero offset, high gain
-reading 7.2735(50)e-4, target 1.221e-05
-caldac[0] gain=-3.85689(41)e-5 V/bit S_min=1.391e+07 dof=14
-caldac[2] gain=3.2897(73)e-6 V/bit S_min=8.14139 dof=14
-caldac[4] gain=-3.8518(72)e-6 V/bit S_min=1.53105 dof=14
-caldac[7] gain=-3.7498(73)e-6 V/bit S_min=1.12204 dof=14
-caldac[8] gain=-1.3171(73)e-6 V/bit S_min=1.69305 dof=14
-ai, unipolar voltage reference, low gain
-reading 5.006138(84), target 4.99996
-caldac[0] gain=-6.26(12)e-5 V/bit S_min=1.18217 dof=14
-caldac[2] gain=3.308(12)e-4 V/bit S_min=3.96637 dof=14
-caldac[4] gain=-7.676(12)e-4 V/bit S_min=2.86645 dof=14
-caldac[7] gain=-7.484(12)e-4 V/bit S_min=4.21217 dof=14
-ao 0, zero offset, low gain
-reading 8.151(90)e-3, target 0.002442
-caldac[0] gain=-6.52(12)e-5 V/bit S_min=1.50399 dof=14
-caldac[4] gain=-7.691(12)e-4 V/bit S_min=2.71547 dof=14
-caldac[6] gain=-7.823(12)e-4 V/bit S_min=4.00833 dof=14
-caldac[10] gain=-1.157(12)e-4 V/bit S_min=2.81203 dof=14
-ao 0, reference voltage, low gain
-reading 8.009267(88), target 8.00244
-caldac[0] gain=-6.32(12)e-5 V/bit S_min=0.950711 dof=14
-caldac[2] gain=-5.401(12)e-4 V/bit S_min=8.61082 dof=14
-caldac[4] gain=-7.699(12)e-4 V/bit S_min=3.08877 dof=14
-caldac[6] gain=-7.832(12)e-4 V/bit S_min=1.81387 dof=14
-caldac[10] gain=-2.072(12)e-4 V/bit S_min=0.741417 dof=14
-caldac[11] gain=-1.557(12)e-4 V/bit S_min=1.28308 dof=14
-ao 0, linearity (mid), low gain
-reading 4.010130(89), target 4.00244
-caldac[0] gain=-6.39(12)e-5 V/bit S_min=1.2223 dof=14
-caldac[2] gain=-2.716(12)e-4 V/bit S_min=2.26024 dof=14
-caldac[4] gain=-7.698(12)e-4 V/bit S_min=1.2458 dof=14
-caldac[6] gain=-7.830(12)e-4 V/bit S_min=3.90656 dof=14
-caldac[10] gain=-1.945(12)e-4 V/bit S_min=1.65973 dof=14
-caldac[11] gain=-7.76(12)e-5 V/bit S_min=1.27209 dof=14
-ao 1, zero offset, low gain
-reading 7.73(89)e-4, target 0.002442
-caldac[0] gain=-6.43(12)e-5 V/bit S_min=1.62275 dof=14
-caldac[1] gain=-1.161(12)e-4 V/bit S_min=2.07195 dof=14
-caldac[4] gain=-7.688(12)e-4 V/bit S_min=2.81123 dof=14
-caldac[9] gain=-7.865(12)e-4 V/bit S_min=1.94089 dof=14
-ao 1, reference voltage, low gain
-reading 8.000496(87), target 8.00244
-caldac[0] gain=-6.36(12)e-5 V/bit S_min=0.770728 dof=14
-caldac[1] gain=-2.085(12)e-4 V/bit S_min=1.38959 dof=14
-caldac[2] gain=-5.391(12)e-4 V/bit S_min=8.42257 dof=14
-caldac[4] gain=-7.694(12)e-4 V/bit S_min=1.63821 dof=14
-caldac[5] gain=-1.567(12)e-4 V/bit S_min=1.16804 dof=14
-caldac[9] gain=-7.876(12)e-4 V/bit S_min=1.85009 dof=14
-ao 1, linearity (mid), low gain
-reading 4.001316(88), target 4.00244
-caldac[0] gain=-6.27(12)e-5 V/bit S_min=2.13699 dof=14
-caldac[1] gain=-1.961(12)e-4 V/bit S_min=1.40938 dof=14
-caldac[2] gain=-2.714(12)e-4 V/bit S_min=3.05877 dof=14
-caldac[4] gain=-7.701(12)e-4 V/bit S_min=2.07027 dof=14
-caldac[5] gain=-7.72(12)e-5 V/bit S_min=0.595616 dof=14
-caldac[9] gain=-7.866(12)e-4 V/bit S_min=0.958617 dof=14
-ao 0, unipolar zero offset, low gain
-reading 7.035(88)e-3, target 0
-caldac[0] gain=-6.51(12)e-5 V/bit S_min=0.976658 dof=14
-caldac[4] gain=-7.694(12)e-4 V/bit S_min=3.70496 dof=14
-caldac[6] gain=-7.766(12)e-4 V/bit S_min=2.28035 dof=14
-caldac[10] gain=-4.04(12)e-5 V/bit S_min=0.367153 dof=14
-ao 0, unipolar high, low gain
-reading 9.008962(85), target 9.00122
-caldac[0] gain=-6.34(12)e-5 V/bit S_min=1.67589 dof=14
-caldac[2] gain=-6.066(12)e-4 V/bit S_min=11.6858 dof=14
-caldac[4] gain=-7.695(12)e-4 V/bit S_min=3.893 dof=14
-caldac[6] gain=-7.769(12)e-4 V/bit S_min=3.65722 dof=14
-caldac[10] gain=-1.035(12)e-4 V/bit S_min=1.07923 dof=14
-caldac[11] gain=-1.745(12)e-4 V/bit S_min=1.57224 dof=14
-ao 0, unipolar linearity (low), low gain
-reading 1.009515(88), target 1.00122
-caldac[0] gain=-6.34(12)e-5 V/bit S_min=0.924085 dof=14
-caldac[2] gain=-7.00(12)e-5 V/bit S_min=0.635915 dof=14
-caldac[4] gain=-7.700(12)e-4 V/bit S_min=2.40145 dof=14
-caldac[6] gain=-7.781(12)e-4 V/bit S_min=1.56716 dof=14
-caldac[10] gain=-7.36(12)e-5 V/bit S_min=1.0521 dof=14
-caldac[11] gain=-1.92(12)e-5 V/bit S_min=0.783716 dof=14
-ao 0, unipolar linearity (mid), low gain
-reading 5.008123(85), target 5.00122
-caldac[0] gain=-6.33(12)e-5 V/bit S_min=1.48113 dof=14
-caldac[2] gain=-3.363(12)e-4 V/bit S_min=5.23039 dof=14
-caldac[4] gain=-7.676(12)e-4 V/bit S_min=3.77244 dof=14
-caldac[6] gain=-7.748(12)e-4 V/bit S_min=5.87411 dof=14
-caldac[10] gain=-5.76(12)e-5 V/bit S_min=0.856877 dof=14
-caldac[11] gain=-9.66(12)e-5 V/bit S_min=2.76267 dof=14
-ao 1, unipolar zero offset, low gain
-reading 4.316(93)e-3, target 0
-caldac[0] gain=-6.50(12)e-5 V/bit S_min=1.49379 dof=14
-caldac[1] gain=-3.96(12)e-5 V/bit S_min=1.1046 dof=14
-caldac[4] gain=-7.685(12)e-4 V/bit S_min=1.84138 dof=14
-caldac[9] gain=-7.816(12)e-4 V/bit S_min=2.7913 dof=14
-ao 1, unipolar high, low gain
-reading 9.006138(85), target 9.00122
-caldac[0] gain=-6.21(12)e-5 V/bit S_min=0.806143 dof=14
-caldac[1] gain=-1.037(12)e-4 V/bit S_min=0.959552 dof=14
-caldac[2] gain=-6.065(12)e-4 V/bit S_min=10.8821 dof=14
-caldac[4] gain=-7.699(12)e-4 V/bit S_min=1.67311 dof=14
-caldac[5] gain=-1.759(12)e-4 V/bit S_min=0.919171 dof=14
-caldac[9] gain=-7.816(12)e-4 V/bit S_min=2.57529 dof=14
-ao 1, unipolar linearity (low), low gain
-reading 1.006281(90), target 1.00122
-caldac[0] gain=-6.33(12)e-5 V/bit S_min=0.534655 dof=14
-caldac[1] gain=-7.39(12)e-5 V/bit S_min=0.941122 dof=14
-caldac[2] gain=-7.05(12)e-5 V/bit S_min=1.67489 dof=14
-caldac[4] gain=-7.702(12)e-4 V/bit S_min=3.07777 dof=14
-caldac[5] gain=-1.91(12)e-5 V/bit S_min=0.586399 dof=14
-caldac[9] gain=-7.816(12)e-4 V/bit S_min=1.46711 dof=14
-ao 1, unipolar linearity (mid), low gain
-reading 5.005480(85), target 5.00122
-caldac[0] gain=-6.28(12)e-5 V/bit S_min=1.20858 dof=14
-caldac[1] gain=-5.74(12)e-5 V/bit S_min=1.30563 dof=14
-caldac[2] gain=-3.366(12)e-4 V/bit S_min=4.12479 dof=14
-caldac[4] gain=-7.671(12)e-4 V/bit S_min=4.25203 dof=14
-caldac[5] gain=-9.70(12)e-5 V/bit S_min=3.3763 dof=14
-caldac[9] gain=-7.791(12)e-4 V/bit S_min=2.95444 dof=14
-WARNING: you need comedi driver version 0.7.71 or later
-for this calibration to work properly
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage reference, low gain
-caldac[2] set to 127
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset, high gain
-caldac[4] set to 132
-binary: ai, bipolar zero offset, high gain
-caldac[0] set to 138
-binary: ai, bipolar zero offset, high gain
-caldac[8] set to 128
-binary peg: ai, unipolar zero offset, low gain
-caldac[0] set to 0
-binary peg: ai, unipolar zero offset, low gain
-caldac[4] set to 0
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar voltage reference, low gain
-caldac[2] set to 136
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar zero offset, high gain
-caldac[4] set to 137
-binary: ai, unipolar zero offset, high gain
-caldac[0] set to 138
-binary: ai, unipolar zero offset, high gain
-caldac[8] set to 131
-linearity binary: ao 0, zero offset, low gain,
-ao 0, linearity (mid), low gain,
-ao 0, reference voltage, low gain
-caldac[10] set to 175
-binary: ao 0, zero offset, low gain
-caldac[6] set to 121
-binary: ao 0, reference voltage, low gain
-caldac[11] set to 109
-linearity binary: ao 0, unipolar linearity (low), low gain,
-ao 0, unipolar linearity (mid), low gain,
-ao 0, unipolar high, low gain
-caldac[10] set to 162
-binary: ao 0, unipolar zero offset, low gain
-caldac[6] set to 129
-binary: ao 0, unipolar high, low gain
-caldac[11] set to 118
-linearity binary: ao 1, zero offset, low gain,
-ao 1, linearity (mid), low gain,
-ao 1, reference voltage, low gain
-caldac[1] set to 150
-binary: ao 1, zero offset, low gain
-caldac[9] set to 115
-binary: ao 1, reference voltage, low gain
-caldac[5] set to 116
-linearity binary: ao 1, unipolar linearity (low), low gain,
-ao 1, unipolar linearity (mid), low gain,
-ao 1, unipolar high, low gain
-caldac[1] set to 137
-binary: ao 1, unipolar zero offset, low gain
-caldac[9] set to 126
-binary: ao 1, unipolar high, low gain
-caldac[5] set to 128
-writing calibration to /usr/local/var/lib/comedi/calibrations/ni_atmio_at-mio-16de-10_comedi0
-ai, bipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 0, aref 3
-reading 2.81(89)e-4, target 0
-caldac[0] gain=-6.36(12)e-5 V/bit S_min=1.11236 dof=14
-caldac[4] gain=-7.686(12)e-4 V/bit S_min=3.79405 dof=14
-ai, bipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 7, aref 3
-reading -6.7(54)e-7, target 0
-caldac[0] gain=-6.34990(72)e-5 V/bit S_min=69.1737 dof=14
-caldac[4] gain=-3.8454(72)e-6 V/bit S_min=1.76324 dof=14
-caldac[8] gain=-1.3132(72)e-6 V/bit S_min=2.98053 dof=14
-ai, bipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 0, aref 3
-reading 5.001164(86), target 4.99996
-caldac[0] gain=-6.13(12)e-5 V/bit S_min=1.65905 dof=14
-caldac[2] gain=-3.356(12)e-4 V/bit S_min=4.50065 dof=14
-caldac[4] gain=-7.676(12)e-4 V/bit S_min=3.33635 dof=14
-ai, unipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 8, aref 3
-reading 3.334(87)e-3, target 0.002442
-caldac[0] gain=-5.365(98)e-5 V/bit S_min=72.6207 dof=14
-caldac[2] gain=2.8677(54)e-4 V/bit S_min=91331.8 dof=14
-caldac[4] gain=-4.7878(69)e-4 V/bit S_min=71669 dof=14
-caldac[7] gain=-4.2401(66)e-4 V/bit S_min=79733.1 dof=14
-ai, unipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 15, aref 3
-reading 1.362(46)e-5, target 1.221e-05
-caldac[0] gain=-3.84618(40)e-5 V/bit S_min=1.43505e+07 dof=14
-caldac[2] gain=1.4036(33)e-6 V/bit S_min=59831.6 dof=14
-caldac[4] gain=-2.3605(42)e-6 V/bit S_min=49103 dof=14
-caldac[7] gain=-2.0945(40)e-6 V/bit S_min=54227.6 dof=14
-caldac[8] gain=-8.060(43)e-7 V/bit S_min=5257.87 dof=14
-ai, unipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 8, aref 3
-reading 5.000701(86), target 4.99996
-caldac[0] gain=-6.23(12)e-5 V/bit S_min=1.03448 dof=14
-caldac[2] gain=3.314(12)e-4 V/bit S_min=4.94084 dof=14
-caldac[4] gain=-7.673(12)e-4 V/bit S_min=2.83449 dof=14
-caldac[7] gain=-7.471(12)e-4 V/bit S_min=3.74962 dof=14
-ao 0, zero offset, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 2.480(91)e-3, target 0.002442
-caldac[0] gain=-6.42(12)e-5 V/bit S_min=1.18484 dof=14
-caldac[4] gain=-7.685(12)e-4 V/bit S_min=1.78753 dof=14
-caldac[6] gain=-7.813(12)e-4 V/bit S_min=1.4534 dof=14
-caldac[10] gain=-1.156(12)e-4 V/bit S_min=1.68224 dof=14
-ao 0, reference voltage, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 8.002223(82), target 8.00244
-caldac[0] gain=-6.36(12)e-5 V/bit S_min=0.590457 dof=14
-caldac[2] gain=-5.394(12)e-4 V/bit S_min=7.49309 dof=14
-caldac[4] gain=-7.699(12)e-4 V/bit S_min=2.74453 dof=14
-caldac[6] gain=-7.820(12)e-4 V/bit S_min=2.05777 dof=14
-caldac[10] gain=-2.079(12)e-4 V/bit S_min=0.876073 dof=14
-caldac[11] gain=-1.557(12)e-4 V/bit S_min=1.83484 dof=14
-ao 0, linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 4.002299(84), target 4.00244
-caldac[0] gain=-6.27(12)e-5 V/bit S_min=0.721777 dof=14
-caldac[2] gain=-2.717(12)e-4 V/bit S_min=1.68157 dof=14
-caldac[4] gain=-7.690(12)e-4 V/bit S_min=1.99066 dof=14
-caldac[6] gain=-7.821(12)e-4 V/bit S_min=3.4423 dof=14
-caldac[10] gain=-1.951(12)e-4 V/bit S_min=2.16902 dof=14
-caldac[11] gain=-7.93(12)e-5 V/bit S_min=0.478897 dof=14
-ao 1, zero offset, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 3.029(90)e-3, target 0.002442
-caldac[0] gain=-6.51(12)e-5 V/bit S_min=0.739889 dof=14
-caldac[1] gain=-1.162(12)e-4 V/bit S_min=3.82293 dof=14
-caldac[4] gain=-7.689(12)e-4 V/bit S_min=3.02564 dof=14
-caldac[9] gain=-7.855(12)e-4 V/bit S_min=1.78823 dof=14
-ao 1, reference voltage, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 8.002318(89), target 8.00244
-caldac[0] gain=-6.31(12)e-5 V/bit S_min=0.555318 dof=14
-caldac[1] gain=-2.087(12)e-4 V/bit S_min=1.04023 dof=14
-caldac[2] gain=-5.397(12)e-4 V/bit S_min=8.27805 dof=14
-caldac[4] gain=-7.698(12)e-4 V/bit S_min=1.61215 dof=14
-caldac[5] gain=-1.557(12)e-4 V/bit S_min=1.72913 dof=14
-caldac[9] gain=-7.869(12)e-4 V/bit S_min=3.29 dof=14
-ao 1, linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 4.002590(86), target 4.00244
-caldac[0] gain=-6.29(12)e-5 V/bit S_min=1.33538 dof=14
-caldac[1] gain=-1.960(12)e-4 V/bit S_min=1.90841 dof=14
-caldac[2] gain=-2.715(12)e-4 V/bit S_min=1.53222 dof=14
-caldac[4] gain=-7.694(12)e-4 V/bit S_min=2.23332 dof=14
-caldac[5] gain=-7.83(12)e-5 V/bit S_min=2.00853 dof=14
-caldac[9] gain=-7.867(12)e-4 V/bit S_min=2.38965 dof=14
-ao 0, unipolar zero offset, low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading -3.48(85)e-4, target 0
-caldac[0] gain=-6.33(12)e-5 V/bit S_min=1.48391 dof=14
-caldac[4] gain=-7.677(12)e-4 V/bit S_min=2.70062 dof=14
-caldac[6] gain=-7.760(12)e-4 V/bit S_min=1.21915 dof=14
-caldac[10] gain=-3.71(12)e-5 V/bit S_min=0.643507 dof=14
-ao 0, unipolar high, low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 9.001135(90), target 9.00122
-caldac[0] gain=-6.24(12)e-5 V/bit S_min=1.15766 dof=14
-caldac[2] gain=-6.058(12)e-4 V/bit S_min=12.5811 dof=14
-caldac[4] gain=-7.697(12)e-4 V/bit S_min=4.02369 dof=14
-caldac[6] gain=-7.769(12)e-4 V/bit S_min=4.19127 dof=14
-caldac[10] gain=-1.039(12)e-4 V/bit S_min=2.38671 dof=14
-caldac[11] gain=-1.756(12)e-4 V/bit S_min=0.612148 dof=14
-ao 0, unipolar linearity (low), low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 1.001493(89), target 1.00122
-caldac[0] gain=-6.30(12)e-5 V/bit S_min=1.05389 dof=14
-caldac[2] gain=-6.99(12)e-5 V/bit S_min=0.860981 dof=14
-caldac[4] gain=-7.694(12)e-4 V/bit S_min=1.91761 dof=14
-caldac[6] gain=-7.771(12)e-4 V/bit S_min=2.76656 dof=14
-caldac[10] gain=-7.24(12)e-5 V/bit S_min=0.611318 dof=14
-caldac[11] gain=-1.90(12)e-5 V/bit S_min=0.617253 dof=14
-ao 0, unipolar linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 5.001054(85), target 5.00122
-caldac[0] gain=-6.22(12)e-5 V/bit S_min=0.907235 dof=14
-caldac[2] gain=-3.354(12)e-4 V/bit S_min=5.21617 dof=14
-caldac[4] gain=-7.673(12)e-4 V/bit S_min=2.67471 dof=14
-caldac[6] gain=-7.750(12)e-4 V/bit S_min=3.77384 dof=14
-caldac[10] gain=-5.59(12)e-5 V/bit S_min=0.809439 dof=14
-caldac[11] gain=-9.66(12)e-5 V/bit S_min=2.84538 dof=14
-ao 1, unipolar zero offset, low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 2.67(87)e-4, target 0
-caldac[0] gain=-6.37(12)e-5 V/bit S_min=2.25024 dof=14
-caldac[1] gain=-3.79(12)e-5 V/bit S_min=2.57162 dof=14
-caldac[4] gain=-7.686(12)e-4 V/bit S_min=4.03167 dof=14
-caldac[9] gain=-7.799(12)e-4 V/bit S_min=0.693932 dof=14
-ao 1, unipolar high, low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 9.001102(86), target 9.00122
-caldac[0] gain=-6.21(12)e-5 V/bit S_min=1.2378 dof=14
-caldac[1] gain=-1.045(12)e-4 V/bit S_min=1.14609 dof=14
-caldac[2] gain=-6.066(12)e-4 V/bit S_min=11.9929 dof=14
-caldac[4] gain=-7.690(12)e-4 V/bit S_min=3.19217 dof=14
-caldac[5] gain=-1.765(12)e-4 V/bit S_min=2.27774 dof=14
-caldac[9] gain=-7.816(12)e-4 V/bit S_min=2.11992 dof=14
-ao 1, unipolar linearity (low), low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 1.001894(88), target 1.00122
-caldac[0] gain=-6.35(12)e-5 V/bit S_min=0.570402 dof=14
-caldac[1] gain=-7.32(12)e-5 V/bit S_min=0.578794 dof=14
-caldac[2] gain=-6.92(12)e-5 V/bit S_min=1.75952 dof=14
-caldac[4] gain=-7.701(12)e-4 V/bit S_min=4.04937 dof=14
-caldac[5] gain=-1.89(11)e-5 V/bit S_min=0.658158 dof=14
-caldac[9] gain=-7.812(12)e-4 V/bit S_min=2.77616 dof=14
-ao 1, unipolar linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 5.001555(84), target 5.00122
-caldac[0] gain=-6.16(12)e-5 V/bit S_min=1.22379 dof=14
-caldac[1] gain=-5.62(12)e-5 V/bit S_min=2.61203 dof=14
-caldac[2] gain=-3.355(12)e-4 V/bit S_min=4.1919 dof=14
-caldac[4] gain=-7.673(12)e-4 V/bit S_min=4.00668 dof=14
-caldac[5] gain=-9.66(12)e-5 V/bit S_min=1.54245 dof=14
-caldac[9] gain=-7.787(12)e-4 V/bit S_min=4.25176 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
-chinasuse92p4sca:/home/walt/comedi/comedi-0.7.70 #                            
\ No newline at end of file
diff --git a/comedi_calibrate/results/at-mio-16e-1 b/comedi_calibrate/results/at-mio-16e-1
deleted file mode 100644 (file)
index 2f50f74..0000000
+++ /dev/null
@@ -1,359 +0,0 @@
-eeprom reference lsb=166 msb=255
-resulting reference voltage: 4.99991
-Warning: device may not be not fully calibrated due to insufficient
-information.Please file a bug report at https://bugs.comedi.org/ and attach this
-output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing option: --verbose
-Forcing options: --reset --dump --calibrate --results
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp
-Driver name: ni_atmio
-Device name: at-mio-16e-1
-Id: ni.c,v 1.110 2004/04/04 02:22:44 fmhess Exp
-Comedi version: 0.7.68
-ai, bipolar zero offset, low gain
-reading 7.5(10)e-4, target 0
-caldac[0] gain=-8.8(14)e-6 V/bit S_min=1.09522 dof=14
-caldac[1] gain=-7.558(14)e-4 V/bit S_min=3.95999 dof=14
-ai, bipolar zero offset, high gain
-reading -3.0465(67)e-4, target 0
-caldac[0] gain=-8.7771(88)e-6 V/bit S_min=2.30312 dof=14
-caldac[1] gain=-3.7754(89)e-6 V/bit S_min=1.89058 dof=14
-caldac[3] gain=3.50(87)e-8 V/bit S_min=0.547216 dof=14
-ai, bipolar voltage reference, low gain
-reading 5.01249(10), target 4.99991
-caldac[0] gain=-8.0(14)e-6 V/bit S_min=0.82462 dof=14
-caldac[1] gain=-7.551(14)e-4 V/bit S_min=2.03064 dof=14
-caldac[3] gain=-4.834(14)e-4 V/bit S_min=3.49087 dof=14
-ai, unipolar zero offset, low gain
-reading 0.0( 0)e-2147483648, target 0.002442
-caldac[1] gain=-3.2276(63)e-4 V/bit S_min=86819.2 dof=14
-caldac[2] gain=-4.3693(67)e-4 V/bit S_min=127497 dof=14
-ai, unipolar zero offset, high gain
-reading 0.0( 0)e-2147483648, target 1.221e-05
-caldac[0] gain=-2.5748(33)e-6 V/bit S_min=335677 dof=14
-caldac[1] gain=-1.875(13)e-7 V/bit S_min=54237.7 dof=14
-caldac[2] gain=-5.994(21)e-7 V/bit S_min=108433 dof=14
-ai, unipolar voltage reference, low gain
-reading 4.99747(10), target 4.99991
-caldac[0] gain=-9.3(14)e-6 V/bit S_min=1.3753 dof=14
-caldac[1] gain=-7.546(14)e-4 V/bit S_min=3.19278 dof=14
-caldac[2] gain=-9.651(14)e-4 V/bit S_min=1.15898 dof=14
-caldac[3] gain=-4.844(14)e-4 V/bit S_min=6.92136 dof=14
-ao 0, zero offset, low gain
-reading -6.119(100)e-3, target 0.002442
-caldac[0] gain=-8.1(14)e-6 V/bit S_min=1.06507 dof=14
-caldac[1] gain=-7.557(14)e-4 V/bit S_min=3.28408 dof=14
-caldac[4] gain=-1.248(14)e-4 V/bit S_min=0.551205 dof=14
-caldac[5] gain=-8.298(14)e-4 V/bit S_min=2.7738 dof=14
-ao 0, reference voltage, low gain
-reading 8.00937(10), target 8.00244
-caldac[0] gain=-9.2(14)e-6 V/bit S_min=1.01639 dof=14
-caldac[1] gain=-7.528(14)e-4 V/bit S_min=1.41349 dof=14
-caldac[3] gain=-7.699(14)e-4 V/bit S_min=11.7405 dof=14
-caldac[4] gain=-2.215(14)e-4 V/bit S_min=1.02548 dof=14
-caldac[5] gain=-8.276(14)e-4 V/bit S_min=0.717992 dof=14
-caldac[6] gain=-1.557(14)e-4 V/bit S_min=1.74443 dof=14
-ao 0, linearity (mid), low gain
-reading 4.00154(10), target 4.00244
-caldac[0] gain=-8.6(14)e-6 V/bit S_min=0.637496 dof=14
-caldac[1] gain=-7.517(14)e-4 V/bit S_min=6.43439 dof=14
-caldac[3] gain=-3.852(14)e-4 V/bit S_min=2.66421 dof=14
-caldac[4] gain=-2.093(14)e-4 V/bit S_min=1.42958 dof=14
-caldac[5] gain=-8.260(14)e-4 V/bit S_min=5.24754 dof=14
-caldac[6] gain=-7.81(14)e-5 V/bit S_min=1.05935 dof=14
-ao 1, zero offset, low gain
-reading -5.771(100)e-3, target 0.002442
-caldac[0] gain=-8.6(14)e-6 V/bit S_min=1.20423 dof=14
-caldac[1] gain=-7.551(14)e-4 V/bit S_min=3.43787 dof=14
-caldac[7] gain=-1.243(14)e-4 V/bit S_min=1.46802 dof=14
-caldac[8] gain=-8.295(14)e-4 V/bit S_min=1.87245 dof=14
-ao 1, reference voltage, low gain
-reading 8.00980(11), target 8.00244
-caldac[0] gain=-8.8(14)e-6 V/bit S_min=1.10784 dof=14
-caldac[1] gain=-7.527(14)e-4 V/bit S_min=0.993669 dof=14
-caldac[3] gain=-7.699(14)e-4 V/bit S_min=11.2815 dof=14
-caldac[7] gain=-2.210(14)e-4 V/bit S_min=1.01976 dof=14
-caldac[8] gain=-8.271(14)e-4 V/bit S_min=1.60461 dof=14
-caldac[9] gain=-1.558(14)e-4 V/bit S_min=1.46595 dof=14
-ao 1, linearity (mid), low gain
-reading 4.00139(10), target 4.00244
-caldac[0] gain=-9.4(14)e-6 V/bit S_min=1.07283 dof=14
-caldac[1] gain=-7.527(14)e-4 V/bit S_min=4.84605 dof=14
-caldac[3] gain=-3.843(14)e-4 V/bit S_min=4.1468 dof=14
-caldac[7] gain=-2.089(14)e-4 V/bit S_min=1.4825 dof=14
-caldac[8] gain=-8.267(14)e-4 V/bit S_min=4.14121 dof=14
-caldac[9] gain=-7.80(14)e-5 V/bit S_min=0.776121 dof=14
-ao 0, unipolar zero offset, low gain
-reading -5.65(10)e-3, target 0
-caldac[0] gain=-8.6(14)e-6 V/bit S_min=0.535554 dof=14
-caldac[1] gain=-7.556(14)e-4 V/bit S_min=3.38384 dof=14
-caldac[4] gain=-4.21(14)e-5 V/bit S_min=1.02791 dof=14
-caldac[5] gain=-8.300(14)e-4 V/bit S_min=1.69337 dof=14
-ao 0, unipolar high, low gain
-reading 9.01431(10), target 9.00122
-caldac[0] gain=-8.9(14)e-6 V/bit S_min=0.592409 dof=14
-caldac[1] gain=-7.525(14)e-4 V/bit S_min=6.92695 dof=14
-caldac[3] gain=-8.645(14)e-4 V/bit S_min=11.548 dof=14
-caldac[4] gain=-1.124(14)e-4 V/bit S_min=2.1145 dof=14
-caldac[5] gain=-8.255(14)e-4 V/bit S_min=5.65795 dof=14
-caldac[6] gain=-1.766(14)e-4 V/bit S_min=1.10924 dof=14
-ao 0, unipolar linearity (low), low gain
-reading 0.99812(11), target 1.00122
-caldac[0] gain=-8.8(14)e-6 V/bit S_min=0.745476 dof=14
-caldac[1] gain=-7.500(14)e-4 V/bit S_min=6.552 dof=14
-caldac[3] gain=-9.50(14)e-5 V/bit S_min=0.923277 dof=14
-caldac[4] gain=-7.86(14)e-5 V/bit S_min=1.15331 dof=14
-caldac[5] gain=-8.245(14)e-4 V/bit S_min=4.12521 dof=14
-caldac[6] gain=-1.97(14)e-5 V/bit S_min=0.590444 dof=14
-ao 0, unipolar linearity (mid), low gain
-reading 5.00690(10), target 5.00122
-caldac[0] gain=-9.3(14)e-6 V/bit S_min=1.01055 dof=14
-caldac[1] gain=-7.550(14)e-4 V/bit S_min=4.20116 dof=14
-caldac[3] gain=-4.825(14)e-4 V/bit S_min=3.93155 dof=14
-caldac[4] gain=-6.40(14)e-5 V/bit S_min=3.80846 dof=14
-caldac[5] gain=-8.289(14)e-4 V/bit S_min=2.12907 dof=14
-caldac[6] gain=-9.99(14)e-5 V/bit S_min=2.83172 dof=14
-ao 1, unipolar zero offset, low gain
-reading -5.86(10)e-3, target 0
-caldac[0] gain=-8.7(14)e-6 V/bit S_min=1.5997 dof=14
-caldac[1] gain=-7.553(14)e-4 V/bit S_min=2.72914 dof=14
-caldac[7] gain=-4.09(14)e-5 V/bit S_min=0.697545 dof=14
-caldac[8] gain=-8.300(14)e-4 V/bit S_min=1.00515 dof=14
-ao 1, unipolar high, low gain
-reading 9.01452(10), target 9.00122
-caldac[0] gain=-8.8(14)e-6 V/bit S_min=1.2525 dof=14
-caldac[1] gain=-7.523(14)e-4 V/bit S_min=6.44631 dof=14
-caldac[3] gain=-8.640(14)e-4 V/bit S_min=14.7367 dof=14
-caldac[7] gain=-1.114(14)e-4 V/bit S_min=0.992928 dof=14
-caldac[8] gain=-8.260(14)e-4 V/bit S_min=7.39194 dof=14
-caldac[9] gain=-1.759(14)e-4 V/bit S_min=0.968929 dof=14
-ao 1, unipolar linearity (low), low gain
-reading 0.99715(10), target 1.00122
-caldac[0] gain=-9.0(14)e-6 V/bit S_min=0.382816 dof=14
-caldac[1] gain=-7.499(14)e-4 V/bit S_min=4.50835 dof=14
-caldac[3] gain=-9.47(14)e-5 V/bit S_min=0.999024 dof=14
-caldac[7] gain=-7.89(14)e-5 V/bit S_min=1.73214 dof=14
-caldac[8] gain=-8.244(14)e-4 V/bit S_min=4.24174 dof=14
-caldac[9] gain=-1.90(14)e-5 V/bit S_min=1.25962 dof=14
-ao 1, unipolar linearity (mid), low gain
-reading 5.00697(10), target 5.00122
-caldac[0] gain=-8.8(14)e-6 V/bit S_min=1.21695 dof=14
-caldac[1] gain=-7.553(14)e-4 V/bit S_min=3.22012 dof=14
-caldac[3] gain=-4.827(14)e-4 V/bit S_min=5.83667 dof=14
-caldac[7] gain=-6.38(14)e-5 V/bit S_min=1.5426 dof=14
-caldac[8] gain=-8.297(14)e-4 V/bit S_min=1.25605 dof=14
-caldac[9] gain=-9.91(14)e-5 V/bit S_min=2.8617 dof=14
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage
-reference, low gain
-caldac[3] set to 151
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset,
-high gain
-caldac[1] set to 127
-binary: ai, bipolar zero offset, high gain
-caldac[0] set to 93
-binary: ai, unipolar zero offset, high gain
-caldac[2] set to 109
-linearity binary: ao 0, zero offset, low gain,
-ao 0, linearity (mid), low gain,
-ao 0, reference voltage, low gain
-caldac[4] set to 121
-binary: ao 0, zero offset, low gain
-caldac[5] set to 118
-binary: ao 0, reference voltage, low gain
-caldac[6] set to 111
-linearity binary: ao 0, unipolar linearity (low), low gain,
-ao 0, unipolar linearity (mid), low gain,
-ao 0, unipolar high, low gain
-caldac[4] set to 124
-binary: ao 0, unipolar zero offset, low gain
-caldac[5] set to 121
-binary: ao 0, unipolar high, low gain
-caldac[6] set to 116
-linearity binary: ao 1, zero offset, low gain,
-ao 1, linearity (mid), low gain,
-ao 1, reference voltage, low gain
-caldac[7] set to 113
-binary: ao 1, zero offset, low gain
-caldac[8] set to 119
-binary: ao 1, reference voltage, low gain
-caldac[9] set to 121
-linearity binary: ao 1, unipolar linearity (low), low gain,
-ao 1, unipolar linearity (mid), low gain,
-ao 1, unipolar high, low gain
-caldac[7] set to 113
-binary: ao 1, unipolar zero offset, low gain
-caldac[8] set to 121
-binary: ao 1, unipolar high, low gain
-caldac[9] set to 125
-writing calibration to
-/usr/var/lib/comedi/calibrations/ni_atmio_at-mio-16e-1_comedi0
-ai, bipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 0, aref 3
-reading 9.7(10)e-4, target 0
-caldac[0] gain=-8.9(14)e-6 V/bit S_min=0.617982 dof=14
-caldac[1] gain=-7.530(14)e-4 V/bit S_min=2.96076 dof=14
-ai, bipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 7, aref 3
-reading -5.58(62)e-6, target 0
-caldac[0] gain=-8.7604(88)e-6 V/bit S_min=3.17216 dof=14
-caldac[1] gain=-3.7642(88)e-6 V/bit S_min=2.50942 dof=14
-ai, bipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 0, aref 3
-reading 5.00112(10), target 4.99991
-caldac[0] gain=-9.1(14)e-6 V/bit S_min=1.02955 dof=14
-caldac[1] gain=-7.529(14)e-4 V/bit S_min=2.66357 dof=14
-caldac[3] gain=-4.828(14)e-4 V/bit S_min=4.4398 dof=14
-ai, unipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 8, aref 3
-reading 3.396(97)e-3, target 0.002442
-caldac[0] gain=-7.4(13)e-6 V/bit S_min=0.605336 dof=14
-caldac[1] gain=-4.2465(76)e-4 V/bit S_min=58496.4 dof=14
-caldac[2] gain=-4.3699(67)e-4 V/bit S_min=125534 dof=14
-ai, unipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 15, aref 3
-reading 1.028(47)e-5, target 1.221e-05
-caldac[0] gain=-3.0428(35)e-6 V/bit S_min=344287 dof=14
-caldac[1] gain=-2.0625(48)e-6 V/bit S_min=36897.9 dof=14
-caldac[2] gain=-2.1356(41)e-6 V/bit S_min=82233.9 dof=14
-ai, unipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 8, aref 3
-reading 5.00366(10), target 4.99991
-caldac[0] gain=-9.2(14)e-6 V/bit S_min=1.28295 dof=14
-caldac[1] gain=-7.520(14)e-4 V/bit S_min=1.8786 dof=14
-caldac[2] gain=-9.622(14)e-4 V/bit S_min=1.62408 dof=14
-caldac[3] gain=-4.851(14)e-4 V/bit S_min=3.7335 dof=14
-ao 0, zero offset, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 2.72(11)e-3, target 0.002442
-caldac[0] gain=-9.5(14)e-6 V/bit S_min=0.647757 dof=14
-caldac[1] gain=-7.532(14)e-4 V/bit S_min=4.57737 dof=14
-caldac[4] gain=-1.250(14)e-4 V/bit S_min=1.45143 dof=14
-caldac[5] gain=-8.271(14)e-4 V/bit S_min=2.69473 dof=14
-ao 0, reference voltage, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 8.00249(10), target 8.00244
-caldac[0] gain=-8.9(14)e-6 V/bit S_min=0.238276 dof=14
-caldac[1] gain=-7.507(14)e-4 V/bit S_min=2.50325 dof=14
-caldac[3] gain=-7.705(14)e-4 V/bit S_min=12.828 dof=14
-caldac[4] gain=-2.212(14)e-4 V/bit S_min=1.66217 dof=14
-caldac[5] gain=-8.246(14)e-4 V/bit S_min=0.664544 dof=14
-caldac[6] gain=-1.559(14)e-4 V/bit S_min=1.49419 dof=14
-ao 0, linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 4.00267(10), target 4.00244
-caldac[0] gain=-8.8(14)e-6 V/bit S_min=0.598028 dof=14
-caldac[1] gain=-7.501(14)e-4 V/bit S_min=4.12502 dof=14
-caldac[3] gain=-3.859(14)e-4 V/bit S_min=3.78547 dof=14
-caldac[4] gain=-2.086(14)e-4 V/bit S_min=1.38229 dof=14
-caldac[5] gain=-8.242(14)e-4 V/bit S_min=5.13416 dof=14
-caldac[6] gain=-7.77(14)e-5 V/bit S_min=1.47309 dof=14
-ao 1, zero offset, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 3.06(10)e-3, target 0.002442
-caldac[0] gain=-9.1(14)e-6 V/bit S_min=0.264933 dof=14
-caldac[1] gain=-7.532(14)e-4 V/bit S_min=4.01244 dof=14
-caldac[7] gain=-1.249(14)e-4 V/bit S_min=1.13164 dof=14
-caldac[8] gain=-8.280(14)e-4 V/bit S_min=1.40017 dof=14
-ao 1, reference voltage, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 8.00227(11), target 8.00244
-caldac[0] gain=-9.0(14)e-6 V/bit S_min=1.09359 dof=14
-caldac[1] gain=-7.508(14)e-4 V/bit S_min=1.81767 dof=14
-caldac[3] gain=-7.698(14)e-4 V/bit S_min=11.5419 dof=14
-caldac[7] gain=-2.208(14)e-4 V/bit S_min=2.01532 dof=14
-caldac[8] gain=-8.244(14)e-4 V/bit S_min=1.68058 dof=14
-caldac[9] gain=-1.549(14)e-4 V/bit S_min=0.746708 dof=14
-ao 1, linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 4.00260(10), target 4.00244
-caldac[0] gain=-8.8(14)e-6 V/bit S_min=1.3585 dof=14
-caldac[1] gain=-7.503(14)e-4 V/bit S_min=4.61528 dof=14
-caldac[3] gain=-3.855(14)e-4 V/bit S_min=3.15529 dof=14
-caldac[7] gain=-2.083(14)e-4 V/bit S_min=1.18802 dof=14
-caldac[8] gain=-8.246(14)e-4 V/bit S_min=3.06557 dof=14
-caldac[9] gain=-7.68(14)e-5 V/bit S_min=1.15218 dof=14
-ao 0, unipolar zero offset, low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading -2.9(10)e-4, target 0
-caldac[0] gain=-9.3(14)e-6 V/bit S_min=1.45539 dof=14
-caldac[1] gain=-7.531(14)e-4 V/bit S_min=2.72128 dof=14
-caldac[4] gain=-4.21(14)e-5 V/bit S_min=1.24898 dof=14
-caldac[5] gain=-8.273(14)e-4 V/bit S_min=2.11517 dof=14
-ao 0, unipolar high, low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 9.00124(10), target 9.00122
-caldac[0] gain=-8.9(14)e-6 V/bit S_min=1.27064 dof=14
-caldac[1] gain=-7.495(14)e-4 V/bit S_min=6.95864 dof=14
-caldac[3] gain=-8.651(14)e-4 V/bit S_min=10.7391 dof=14
-caldac[4] gain=-1.106(14)e-4 V/bit S_min=1.63484 dof=14
-caldac[5] gain=-8.240(14)e-4 V/bit S_min=2.3986 dof=14
-caldac[6] gain=-1.753(14)e-4 V/bit S_min=0.722429 dof=14
-ao 0, unipolar linearity (low), low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 1.00139(10), target 1.00122
-caldac[0] gain=-8.8(14)e-6 V/bit S_min=1.10918 dof=14
-caldac[1] gain=-7.480(14)e-4 V/bit S_min=7.34355 dof=14
-caldac[3] gain=-9.60(14)e-5 V/bit S_min=1.20038 dof=14
-caldac[4] gain=-7.80(14)e-5 V/bit S_min=0.877571 dof=14
-caldac[5] gain=-8.224(14)e-4 V/bit S_min=7.45923 dof=14
-caldac[6] gain=-1.95(14)e-5 V/bit S_min=0.874179 dof=14
-ao 0, unipolar linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 5.00124(10), target 5.00122
-caldac[0] gain=-8.4(14)e-6 V/bit S_min=0.709361 dof=14
-caldac[1] gain=-7.528(14)e-4 V/bit S_min=5.06733 dof=14
-caldac[3] gain=-4.821(14)e-4 V/bit S_min=4.98762 dof=14
-caldac[4] gain=-6.37(14)e-5 V/bit S_min=1.21146 dof=14
-caldac[5] gain=-8.274(14)e-4 V/bit S_min=3.13798 dof=14
-caldac[6] gain=-9.96(14)e-5 V/bit S_min=3.12514 dof=14
-ao 1, unipolar zero offset, low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading -0.8(10)e-4, target 0
-caldac[0] gain=-8.9(14)e-6 V/bit S_min=0.761959 dof=14
-caldac[1] gain=-7.536(14)e-4 V/bit S_min=3.96696 dof=14
-caldac[7] gain=-4.24(14)e-5 V/bit S_min=1.65739 dof=14
-caldac[8] gain=-8.273(14)e-4 V/bit S_min=2.62236 dof=14
-ao 1, unipolar high, low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 9.00119(10), target 9.00122
-caldac[0] gain=-9.2(14)e-6 V/bit S_min=1.05796 dof=14
-caldac[1] gain=-7.502(14)e-4 V/bit S_min=3.57367 dof=14
-caldac[3] gain=-8.643(14)e-4 V/bit S_min=10.3467 dof=14
-caldac[7] gain=-1.105(14)e-4 V/bit S_min=0.548318 dof=14
-caldac[8] gain=-8.247(14)e-4 V/bit S_min=3.35923 dof=14
-caldac[9] gain=-1.749(14)e-4 V/bit S_min=1.24378 dof=14
-ao 1, unipolar linearity (low), low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 1.00146(10), target 1.00122
-caldac[0] gain=-9.4(14)e-6 V/bit S_min=0.407992 dof=14
-caldac[1] gain=-7.481(14)e-4 V/bit S_min=5.77114 dof=14
-caldac[3] gain=-9.60(14)e-5 V/bit S_min=1.63417 dof=14
-caldac[7] gain=-7.82(14)e-5 V/bit S_min=1.83454 dof=14
-caldac[8] gain=-8.223(14)e-4 V/bit S_min=5.18168 dof=14
-caldac[9] gain=-1.99(14)e-5 V/bit S_min=0.703599 dof=14
-ao 1, unipolar linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 5.00131(10), target 5.00122
-caldac[0] gain=-9.3(14)e-6 V/bit S_min=0.852245 dof=14
-caldac[1] gain=-7.526(14)e-4 V/bit S_min=3.69192 dof=14
-caldac[3] gain=-4.822(14)e-4 V/bit S_min=5.88581 dof=14
-caldac[7] gain=-6.41(14)e-5 V/bit S_min=2.28479 dof=14
-caldac[8] gain=-8.275(14)e-4 V/bit S_min=2.11014 dof=14
-caldac[9] gain=-1.001(14)e-4 V/bit S_min=2.48091 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/at-mio-16e-10 b/comedi_calibrate/results/at-mio-16e-10
deleted file mode 100644 (file)
index 6160cf2..0000000
+++ /dev/null
@@ -1,366 +0,0 @@
-eeprom reference lsb=134 msb=255
-resulting reference voltage: 4.99988
-Warning: device may not be not fully calibrated due to insufficient information.
-Please file a bug report at https://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing option: --verbose
-Forcing options: --reset --dump --calibrate --results
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp 
-Driver name: ni_atmio
-Device name: at-mio-16e-10
-Id: ni.c,v 1.112 2004/05/12 01:08:49 fmhess Exp 
-Comedi version: 0.7.68
-ai, bipolar zero offset, low gain
-reading -0.04216(10), target 0
-caldac[0] gain=-6.27(15)e-5 V/bit S_min=0.839148 dof=14
-caldac[4] gain=-7.697(15)e-4 V/bit S_min=1.76983 dof=14
-ai, bipolar zero offset, high gain
-reading -5.6338(64)e-4, target 0
-caldac[0] gain=-6.28521(84)e-5 V/bit S_min=286.119 dof=14
-caldac[4] gain=-3.8589(85)e-6 V/bit S_min=2.15162 dof=14
-caldac[8] gain=-1.3014(85)e-6 V/bit S_min=1.11977 dof=14
-ai, bipolar voltage reference, low gain
-reading 4.95955(10), target 4.99988
-caldac[0] gain=-6.26(15)e-5 V/bit S_min=0.681492 dof=14
-caldac[2] gain=-3.305(15)e-4 V/bit S_min=3.45267 dof=14
-caldac[4] gain=-7.712(15)e-4 V/bit S_min=1.78521 dof=14
-ai, unipolar zero offset, low gain
-reading 0.0( 0)e-2147483648, target 0.002442
-caldac[2] gain=7.899(33)e-5 V/bit S_min=77065.3 dof=14
-caldac[4] gain=-1.7730(46)e-4 V/bit S_min=108363 dof=14
-caldac[7] gain=-1.6735(47)e-4 V/bit S_min=97376 dof=14
-ai, unipolar zero offset, high gain
-reading 0.0( 0)e-2147483648, target 1.221e-05
-caldac[0] gain=-3.08038(43)e-5 V/bit S_min=1.33255e+07 dof=14
-ai, unipolar voltage reference, low gain
-reading 4.95899(11), target 4.99988
-caldac[0] gain=-6.20(15)e-5 V/bit S_min=1.18919 dof=14
-caldac[2] gain=3.303(15)e-4 V/bit S_min=2.75213 dof=14
-caldac[4] gain=-7.710(15)e-4 V/bit S_min=2.73149 dof=14
-caldac[7] gain=-7.519(15)e-4 V/bit S_min=1.39442 dof=14
-ao 0, zero offset, low gain
-reading -0.03853(11), target 0.002442
-caldac[0] gain=-6.33(15)e-5 V/bit S_min=0.963782 dof=14
-caldac[4] gain=-7.697(15)e-4 V/bit S_min=2.18864 dof=14
-caldac[6] gain=-7.853(15)e-4 V/bit S_min=1.12649 dof=14
-caldac[10] gain=-1.156(14)e-4 V/bit S_min=0.631839 dof=14
-ao 0, reference voltage, low gain
-reading 7.96015(10), target 8.00244
-caldac[0] gain=-6.34(15)e-5 V/bit S_min=0.490311 dof=14
-caldac[2] gain=-5.274(15)e-4 V/bit S_min=6.0819 dof=14
-caldac[4] gain=-7.701(15)e-4 V/bit S_min=1.38853 dof=14
-caldac[6] gain=-7.861(15)e-4 V/bit S_min=1.83657 dof=14
-caldac[10] gain=-2.083(14)e-4 V/bit S_min=1.01466 dof=14
-caldac[11] gain=-1.573(15)e-4 V/bit S_min=1.40179 dof=14
-ao 0, linearity (mid), low gain
-reading 3.96109(11), target 4.00244
-caldac[0] gain=-6.25(15)e-5 V/bit S_min=1.0613 dof=14
-caldac[2] gain=-2.638(15)e-4 V/bit S_min=1.71205 dof=14
-caldac[4] gain=-7.706(15)e-4 V/bit S_min=1.50717 dof=14
-caldac[6] gain=-7.865(15)e-4 V/bit S_min=1.2023 dof=14
-caldac[10] gain=-1.956(15)e-4 V/bit S_min=0.454084 dof=14
-caldac[11] gain=-7.87(15)e-5 V/bit S_min=1.7689 dof=14
-ao 1, zero offset, low gain
-reading -0.04266(11), target 0.002442
-caldac[0] gain=-6.27(15)e-5 V/bit S_min=1.53241 dof=14
-caldac[1] gain=-1.144(15)e-4 V/bit S_min=1.68184 dof=14
-caldac[4] gain=-7.692(15)e-4 V/bit S_min=2.25693 dof=14
-caldac[9] gain=-7.835(15)e-4 V/bit S_min=1.08339 dof=14
-ao 1, reference voltage, low gain
-reading 7.95628(11), target 8.00244
-caldac[0] gain=-6.30(15)e-5 V/bit S_min=0.687474 dof=14
-caldac[1] gain=-2.079(15)e-4 V/bit S_min=1.12953 dof=14
-caldac[2] gain=-5.282(15)e-4 V/bit S_min=3.25719 dof=14
-caldac[4] gain=-7.704(15)e-4 V/bit S_min=0.904927 dof=14
-caldac[5] gain=-1.586(15)e-4 V/bit S_min=0.486354 dof=14
-caldac[9] gain=-7.838(15)e-4 V/bit S_min=0.915931 dof=14
-ao 1, linearity (mid), low gain
-reading 3.95695(10), target 4.00244
-caldac[0] gain=-6.33(15)e-5 V/bit S_min=0.715137 dof=14
-caldac[1] gain=-1.951(15)e-4 V/bit S_min=1.71303 dof=14
-caldac[2] gain=-2.638(15)e-4 V/bit S_min=2.31793 dof=14
-caldac[4] gain=-7.708(15)e-4 V/bit S_min=1.6738 dof=14
-caldac[5] gain=-7.92(14)e-5 V/bit S_min=0.563063 dof=14
-caldac[9] gain=-7.843(15)e-4 V/bit S_min=1.03905 dof=14
-ao 0, unipolar zero offset, low gain
-reading -0.04088(11), target 0
-caldac[0] gain=-6.32(15)e-5 V/bit S_min=0.679378 dof=14
-caldac[4] gain=-7.696(15)e-4 V/bit S_min=1.88536 dof=14
-caldac[6] gain=-7.797(15)e-4 V/bit S_min=1.60174 dof=14
-caldac[10] gain=-3.81(15)e-5 V/bit S_min=1.09965 dof=14
-ao 0, unipolar high, low gain
-reading 8.95685(11), target 9.00122
-caldac[0] gain=-6.29(15)e-5 V/bit S_min=0.645442 dof=14
-caldac[2] gain=-5.948(15)e-4 V/bit S_min=8.22568 dof=14
-caldac[4] gain=-7.710(15)e-4 V/bit S_min=1.64758 dof=14
-caldac[6] gain=-7.802(15)e-4 V/bit S_min=2.05647 dof=14
-caldac[10] gain=-1.037(15)e-4 V/bit S_min=1.02156 dof=14
-caldac[11] gain=-1.763(15)e-4 V/bit S_min=1.11353 dof=14
-ao 0, unipolar linearity (low), low gain
-reading 0.96036(11), target 1.00122
-caldac[0] gain=-6.31(15)e-5 V/bit S_min=1.09614 dof=14
-caldac[2] gain=-6.61(15)e-5 V/bit S_min=0.760375 dof=14
-caldac[4] gain=-7.710(15)e-4 V/bit S_min=1.31375 dof=14
-caldac[6] gain=-7.817(15)e-4 V/bit S_min=0.887328 dof=14
-caldac[10] gain=-7.28(15)e-5 V/bit S_min=0.64491 dof=14
-caldac[11] gain=-1.96(15)e-5 V/bit S_min=0.927068 dof=14
-ao 0, unipolar linearity (mid), low gain
-reading 4.95838(11), target 5.00122
-caldac[0] gain=-6.24(15)e-5 V/bit S_min=0.714695 dof=14
-caldac[2] gain=-3.299(15)e-4 V/bit S_min=2.32927 dof=14
-caldac[4] gain=-7.706(14)e-4 V/bit S_min=1.4876 dof=14
-caldac[6] gain=-7.809(14)e-4 V/bit S_min=0.670261 dof=14
-caldac[10] gain=-5.73(15)e-5 V/bit S_min=0.813239 dof=14
-caldac[11] gain=-9.81(15)e-5 V/bit S_min=0.83968 dof=14
-ao 1, unipolar zero offset, low gain
-reading -0.04089(11), target 0
-caldac[0] gain=-6.24(15)e-5 V/bit S_min=0.600844 dof=14
-caldac[1] gain=-3.79(15)e-5 V/bit S_min=1.24474 dof=14
-caldac[4] gain=-7.696(15)e-4 V/bit S_min=1.78661 dof=14
-caldac[9] gain=-7.775(15)e-4 V/bit S_min=1.05585 dof=14
-ao 1, unipolar high, low gain
-reading 8.96179(11), target 9.00122
-caldac[0] gain=-6.21(15)e-5 V/bit S_min=0.783658 dof=14
-caldac[1] gain=-1.043(15)e-4 V/bit S_min=0.663375 dof=14
-caldac[2] gain=-5.942(14)e-4 V/bit S_min=7.08621 dof=14
-caldac[4] gain=-7.703(15)e-4 V/bit S_min=1.71628 dof=14
-caldac[5] gain=-1.786(14)e-4 V/bit S_min=0.969797 dof=14
-caldac[9] gain=-7.790(14)e-4 V/bit S_min=1.28199 dof=14
-ao 1, unipolar linearity (low), low gain
-reading 0.96047(11), target 1.00122
-caldac[0] gain=-6.27(14)e-5 V/bit S_min=0.765561 dof=14
-caldac[1] gain=-7.41(15)e-5 V/bit S_min=0.666894 dof=14
-caldac[2] gain=-6.65(15)e-5 V/bit S_min=0.870639 dof=14
-caldac[4] gain=-7.711(15)e-4 V/bit S_min=1.40739 dof=14
-caldac[5] gain=-2.03(15)e-5 V/bit S_min=0.321384 dof=14
-caldac[9] gain=-7.787(15)e-4 V/bit S_min=1.21402 dof=14
-ao 1, unipolar linearity (mid), low gain
-reading 4.96097(10), target 5.00122
-caldac[0] gain=-6.35(15)e-5 V/bit S_min=1.22866 dof=14
-caldac[1] gain=-5.74(15)e-5 V/bit S_min=0.459804 dof=14
-caldac[2] gain=-3.298(15)e-4 V/bit S_min=3.20642 dof=14
-caldac[4] gain=-7.707(15)e-4 V/bit S_min=1.05247 dof=14
-caldac[5] gain=-9.97(15)e-5 V/bit S_min=0.644686 dof=14
-caldac[9] gain=-7.789(15)e-4 V/bit S_min=0.808804 dof=14
-WARNING: you need comedi driver version 0.7.69 or later
-for this calibration to work properly
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage
-reference, low gain
-caldac[2] set to 133
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset,
-high gain
-caldac[4] set to 73
-binary: ai, bipolar zero offset, high gain
-caldac[0] set to 121
-binary: ai, bipolar zero offset, high gain
-caldac[8] set to 143
-binary: ai, unipolar zero offset, high gain
-caldac[7] set to 129
-linearity binary: ao 0, zero offset, low gain,
-ao 0, linearity (mid), low gain,
-ao 0, reference voltage, low gain
-caldac[10] set to 145
-binary: ao 0, zero offset, low gain
-caldac[6] set to 125
-binary: ao 0, reference voltage, low gain
-caldac[11] set to 91
-linearity binary: ao 0, unipolar linearity (low), low gain,
-ao 0, unipolar linearity (mid), low gain,
-ao 0, unipolar high, low gain
-caldac[10] set to 138
-binary: ao 0, unipolar zero offset, low gain
-caldac[6] set to 127
-binary: ao 0, unipolar high, low gain
-caldac[11] set to 86
-linearity binary: ao 1, zero offset, low gain,
-ao 1, linearity (mid), low gain,
-ao 1, reference voltage, low gain
-caldac[1] set to 135
-binary: ao 1, zero offset, low gain
-caldac[9] set to 121
-binary: ao 1, reference voltage, low gain
-caldac[5] set to 99
-linearity binary: ao 1, unipolar linearity (low), low gain,
-ao 1, unipolar linearity (mid), low gain,
-ao 1, unipolar high, low gain
-caldac[1] set to 131
-binary: ao 1, unipolar zero offset, low gain
-caldac[9] set to 127
-binary: ao 1, unipolar high, low gain
-caldac[5] set to 119
-writing calibration to
-/var/lib/libcomedi0/lib/comedi/calibrations/ni_atmio_at-mio-16e-10_comedi0
-ai, bipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 0, aref 3
-reading -4.5(10)e-4, target 0
-caldac[0] gain=-6.18(14)e-5 V/bit S_min=1.44566 dof=14
-caldac[4] gain=-7.693(15)e-4 V/bit S_min=2.63626 dof=14
-ai, bipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 7, aref 3
-reading -1.67(63)e-6, target 0
-caldac[0] gain=-6.28207(85)e-5 V/bit S_min=261.095 dof=14
-caldac[4] gain=-3.8409(85)e-6 V/bit S_min=1.87136 dof=14
-caldac[8] gain=-1.2932(85)e-6 V/bit S_min=0.946757 dof=14
-ai, bipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 0, aref 3
-reading 4.99964(11), target 4.99988
-caldac[0] gain=-6.10(15)e-5 V/bit S_min=0.625235 dof=14
-caldac[2] gain=-3.336(15)e-4 V/bit S_min=3.00489 dof=14
-caldac[4] gain=-7.697(15)e-4 V/bit S_min=1.59119 dof=14
-ai, unipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 8, aref 3
-reading 2.242(88)e-3, target 0.002442
-caldac[0] gain=-4.066(100)e-5 V/bit S_min=126.41 dof=14
-caldac[2] gain=2.8646(67)e-4 V/bit S_min=56747.2 dof=14
-caldac[4] gain=-1.9136(48)e-4 V/bit S_min=107380 dof=14
-caldac[7] gain=-4.2489(82)e-4 V/bit S_min=51685.2 dof=14
-ai, unipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 15, aref 3
-reading 1.183(48)e-5, target 1.221e-05
-caldac[0] gain=-3.19586(42)e-5 V/bit S_min=1.38091e+07 dof=14
-caldac[2] gain=1.4305(40)e-6 V/bit S_min=39020.9 dof=14
-caldac[4] gain=-9.523(28)e-7 V/bit S_min=80296.6 dof=14
-caldac[7] gain=-2.1202(48)e-6 V/bit S_min=38115.8 dof=14
-caldac[8] gain=-8.725(54)e-7 V/bit S_min=2918.98 dof=14
-ai, unipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 8, aref 3
-reading 5.00153(11), target 4.99988
-caldac[0] gain=-6.32(15)e-5 V/bit S_min=0.877728 dof=14
-caldac[2] gain=3.282(15)e-4 V/bit S_min=3.48317 dof=14
-caldac[4] gain=-7.706(15)e-4 V/bit S_min=1.27444 dof=14
-caldac[7] gain=-7.518(15)e-4 V/bit S_min=1.48678 dof=14
-ao 0, zero offset, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 2.48(11)e-3, target 0.002442
-caldac[0] gain=-6.15(15)e-5 V/bit S_min=0.932536 dof=14
-caldac[4] gain=-7.694(15)e-4 V/bit S_min=1.14872 dof=14
-caldac[6] gain=-7.854(14)e-4 V/bit S_min=1.18351 dof=14
-caldac[10] gain=-1.142(15)e-4 V/bit S_min=0.990343 dof=14
-ao 0, reference voltage, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 8.00243(11), target 8.00244
-caldac[0] gain=-6.30(15)e-5 V/bit S_min=0.908084 dof=14
-caldac[2] gain=-5.305(15)e-4 V/bit S_min=3.61864 dof=14
-caldac[4] gain=-7.702(15)e-4 V/bit S_min=0.967538 dof=14
-caldac[6] gain=-7.864(14)e-4 V/bit S_min=1.29989 dof=14
-caldac[10] gain=-2.076(15)e-4 V/bit S_min=2.09404 dof=14
-caldac[11] gain=-1.574(15)e-4 V/bit S_min=0.36921 dof=14
-ao 0, linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 4.00238(11), target 4.00244
-caldac[0] gain=-6.26(15)e-5 V/bit S_min=1.06345 dof=14
-caldac[2] gain=-2.669(15)e-4 V/bit S_min=1.28856 dof=14
-caldac[4] gain=-7.703(15)e-4 V/bit S_min=2.00311 dof=14
-caldac[6] gain=-7.865(15)e-4 V/bit S_min=0.87697 dof=14
-caldac[10] gain=-1.954(15)e-4 V/bit S_min=0.366729 dof=14
-caldac[11] gain=-7.85(15)e-5 V/bit S_min=1.78124 dof=14
-ao 1, zero offset, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 2.67(11)e-3, target 0.002442
-caldac[0] gain=-6.15(15)e-5 V/bit S_min=0.84254 dof=14
-caldac[1] gain=-1.148(15)e-4 V/bit S_min=1.32828 dof=14
-caldac[4] gain=-7.694(15)e-4 V/bit S_min=2.4304 dof=14
-caldac[9] gain=-7.826(15)e-4 V/bit S_min=0.680088 dof=14
-ao 1, reference voltage, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 8.00257(10), target 8.00244
-caldac[0] gain=-6.29(15)e-5 V/bit S_min=0.763702 dof=14
-caldac[1] gain=-2.084(15)e-4 V/bit S_min=1.32319 dof=14
-caldac[2] gain=-5.301(15)e-4 V/bit S_min=4.73528 dof=14
-caldac[4] gain=-7.704(15)e-4 V/bit S_min=2.6164 dof=14
-caldac[5] gain=-1.588(15)e-4 V/bit S_min=1.44711 dof=14
-caldac[9] gain=-7.842(15)e-4 V/bit S_min=0.902262 dof=14
-ao 1, linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 4.00263(11), target 4.00244
-caldac[0] gain=-6.23(14)e-5 V/bit S_min=0.675892 dof=14
-caldac[1] gain=-1.947(15)e-4 V/bit S_min=0.720741 dof=14
-caldac[2] gain=-2.671(15)e-4 V/bit S_min=1.56707 dof=14
-caldac[4] gain=-7.704(15)e-4 V/bit S_min=1.55598 dof=14
-caldac[5] gain=-7.97(15)e-5 V/bit S_min=0.87347 dof=14
-caldac[9] gain=-7.837(14)e-4 V/bit S_min=1.28267 dof=14
-ao 0, unipolar zero offset, low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 5.1(10)e-4, target 0
-caldac[0] gain=-6.16(15)e-5 V/bit S_min=1.24117 dof=14
-caldac[4] gain=-7.702(15)e-4 V/bit S_min=1.65669 dof=14
-caldac[6] gain=-7.795(15)e-4 V/bit S_min=2.19095 dof=14
-caldac[10] gain=-3.67(15)e-5 V/bit S_min=0.728358 dof=14
-ao 0, unipolar high, low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 9.00133(10), target 9.00122
-caldac[0] gain=-6.21(15)e-5 V/bit S_min=1.42087 dof=14
-caldac[2] gain=-5.981(15)e-4 V/bit S_min=7.39894 dof=14
-caldac[4] gain=-7.700(15)e-4 V/bit S_min=0.753255 dof=14
-caldac[6] gain=-7.805(15)e-4 V/bit S_min=0.985886 dof=14
-caldac[10] gain=-1.046(15)e-4 V/bit S_min=0.818095 dof=14
-caldac[11] gain=-1.770(15)e-4 V/bit S_min=1.33854 dof=14
-ao 0, unipolar linearity (low), low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 1.00186(11), target 1.00122
-caldac[0] gain=-6.30(15)e-5 V/bit S_min=0.774316 dof=14
-caldac[2] gain=-6.81(15)e-5 V/bit S_min=1.28007 dof=14
-caldac[4] gain=-7.703(15)e-4 V/bit S_min=1.4686 dof=14
-caldac[6] gain=-7.805(15)e-4 V/bit S_min=1.06114 dof=14
-caldac[10] gain=-7.31(15)e-5 V/bit S_min=1.0248 dof=14
-caldac[11] gain=-2.02(15)e-5 V/bit S_min=1.23471 dof=14
-ao 0, unipolar linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 5.00174(10), target 5.00122
-caldac[0] gain=-6.22(15)e-5 V/bit S_min=1.55824 dof=14
-caldac[2] gain=-3.324(15)e-4 V/bit S_min=2.7321 dof=14
-caldac[4] gain=-7.704(15)e-4 V/bit S_min=1.29298 dof=14
-caldac[6] gain=-7.801(15)e-4 V/bit S_min=1.34454 dof=14
-caldac[10] gain=-5.72(15)e-5 V/bit S_min=1.67128 dof=14
-caldac[11] gain=-9.75(15)e-5 V/bit S_min=1.65589 dof=14
-ao 1, unipolar zero offset, low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 5.8(11)e-4, target 0
-caldac[0] gain=-6.11(15)e-5 V/bit S_min=2.22237 dof=14
-caldac[1] gain=-3.83(14)e-5 V/bit S_min=0.434581 dof=14
-caldac[4] gain=-7.690(15)e-4 V/bit S_min=1.34586 dof=14
-caldac[9] gain=-7.769(15)e-4 V/bit S_min=0.709746 dof=14
-ao 1, unipolar high, low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 9.00130(11), target 9.00122
-caldac[0] gain=-6.27(14)e-5 V/bit S_min=1.43785 dof=14
-caldac[1] gain=-1.037(15)e-4 V/bit S_min=1.27531 dof=14
-caldac[2] gain=-5.972(15)e-4 V/bit S_min=7.4144 dof=14
-caldac[4] gain=-7.706(14)e-4 V/bit S_min=0.721386 dof=14
-caldac[5] gain=-1.777(14)e-4 V/bit S_min=0.864069 dof=14
-caldac[9] gain=-7.781(15)e-4 V/bit S_min=1.23413 dof=14
-ao 1, unipolar linearity (low), low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 1.00184(11), target 1.00122
-caldac[0] gain=-6.37(15)e-5 V/bit S_min=0.853695 dof=14
-caldac[1] gain=-7.32(15)e-5 V/bit S_min=1.07479 dof=14
-caldac[2] gain=-6.89(15)e-5 V/bit S_min=1.37214 dof=14
-caldac[4] gain=-7.702(15)e-4 V/bit S_min=0.634082 dof=14
-caldac[5] gain=-2.09(15)e-5 V/bit S_min=0.554968 dof=14
-caldac[9] gain=-7.790(15)e-4 V/bit S_min=1.30251 dof=14
-ao 1, unipolar linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 5.00184(10), target 5.00122
-caldac[0] gain=-6.22(15)e-5 V/bit S_min=0.860036 dof=14
-caldac[1] gain=-5.77(15)e-5 V/bit S_min=1.02808 dof=14
-caldac[2] gain=-3.332(15)e-4 V/bit S_min=5.20194 dof=14
-caldac[4] gain=-7.697(15)e-4 V/bit S_min=2.36561 dof=14
-caldac[5] gain=-9.84(15)e-5 V/bit S_min=0.639216 dof=14
-caldac[9] gain=-7.781(14)e-4 V/bit S_min=1.25555 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
-
diff --git a/comedi_calibrate/results/at-mio-16e-2 b/comedi_calibrate/results/at-mio-16e-2
deleted file mode 100644 (file)
index e9f06f4..0000000
+++ /dev/null
@@ -1,124 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-$Id$
-Driver name: ni_atmio
-Device name: at-mio-16e-2
-Comedi version: 0.7.59
-ai, bipolar zero offset, low gain
-offset 0.02530(24), target 0
-caldac[0] gain=-8.94(21)e-6 V/bit S_min=227.333 dof=254
-caldac[1] gain=-8.1614(22)e-4 V/bit S_min=1475.19 dof=254
-caldac[3] gain=-2.58(21)e-6 V/bit S_min=229.168 dof=254
-ai, bipolar zero offset, high gain
-offset 1.60(16)e-5, target 0
-caldac[0] gain=-8.8872(13)e-6 V/bit S_min=1289.9 dof=254
-caldac[1] gain=-4.0890(13)e-6 V/bit S_min=1071.01 dof=254
-ai, bipolar voltage reference, low gain
-offset 5.02862(27), target 5
-caldac[0] gain=-8.89(21)e-6 V/bit S_min=261.79 dof=254
-caldac[1] gain=-8.0967(21)e-4 V/bit S_min=649.448 dof=254
-caldac[3] gain=-4.8405(21)e-4 V/bit S_min=760.715 dof=254
-ai, unipolar zero offset, low gain
-offset 0.02389(27), target 0
-caldac[0] gain=-8.84(21)e-6 V/bit S_min=242.096 dof=254
-caldac[1] gain=-8.0716(49)e-4 V/bit S_min=270.72 dof=145
-caldac[2] gain=-9.5442(51)e-4 V/bit S_min=307.047 dof=142
-caldac[3] gain=-1.08(22)e-6 V/bit S_min=237.08 dof=254
-ao 0, zero offset, low gain
-offset 0.02690(24), target 0.002442
-caldac[0] gain=-8.77(21)e-6 V/bit S_min=253.83 dof=254
-caldac[1] gain=-8.1562(21)e-4 V/bit S_min=1215.94 dof=254
-caldac[3] gain=-2.29(21)e-6 V/bit S_min=234.218 dof=254
-caldac[4] gain=-1.1995(21)e-4 V/bit S_min=506.825 dof=254
-caldac[5] gain=-8.1157(21)e-4 V/bit S_min=1267.71 dof=254
-ao 0, reference voltage, low gain
-offset 0.02282(24), target -0.001221
-caldac[0] gain=-6.85(19)e-6 V/bit S_min=256.136 dof=254
-caldac[1] gain=-8.1627(22)e-4 V/bit S_min=1281.34 dof=254
-caldac[3] gain=-1.44(20)e-6 V/bit S_min=227.512 dof=254
-caldac[4] gain=-1.5195(21)e-4 V/bit S_min=497.826 dof=254
-caldac[5] gain=-8.1175(22)e-4 V/bit S_min=1293.05 dof=254
-caldac[6] gain=-9.586(21)e-5 V/bit S_min=382.737 dof=254
-ao 1, zero offset, low gain
-offset 0.02457(26), target 0.002442
-caldac[0] gain=-8.00(21)e-6 V/bit S_min=252.512 dof=254
-caldac[1] gain=-8.1594(21)e-4 V/bit S_min=1438.7 dof=254
-caldac[3] gain=-2.87(21)e-6 V/bit S_min=244.086 dof=254
-caldac[7] gain=-1.1865(22)e-4 V/bit S_min=498.414 dof=254
-caldac[8] gain=-8.0761(22)e-4 V/bit S_min=1261.1 dof=254
-ao 1, reference voltage, low gain
-offset 0.01839(26), target -0.001221
-caldac[0] gain=-1.033(23)e-5 V/bit S_min=241.364 dof=254
-caldac[1] gain=-8.1633(22)e-4 V/bit S_min=1292.68 dof=254
-caldac[3] gain=-2.08(24)e-6 V/bit S_min=269.359 dof=254
-caldac[7] gain=-1.5064(22)e-4 V/bit S_min=463.74 dof=254
-caldac[8] gain=-8.0799(22)e-4 V/bit S_min=1413.52 dof=254
-caldac[9] gain=-9.592(21)e-5 V/bit S_min=413.486 dof=254
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, high gain
-caldac[1] gain=-8.1616(21)e-4 V/bit S_min=1553.67 dof=254
-caldac[1] gain=-4.0903(13)e-6 V/bit S_min=927.262 dof=254
-caldac[1] set to 158.517
-linear: ai, bipolar zero offset, high gain
-caldac[0] gain=-8.8897(13)e-6 V/bit S_min=1038.96 dof=254
-caldac[0] set to 113.439
-linear: ai, bipolar voltage reference, low gain
-caldac[3] gain=-4.8118(21)e-4 V/bit S_min=832.931 dof=254
-caldac[3] set to 134.56
-linear: ai, unipolar zero offset, low gain
-caldac[2] gain=-9.5331(70)e-4 V/bit S_min=186.418 dof=115
-caldac[2] set to 125.914
-linear: ao 0, zero offset, low gain
-caldac[5] gain=-8.1216(22)e-4 V/bit S_min=1466.65 dof=254
-caldac[5] set to 124.51
-linear: ao 0, reference voltage, low gain
-caldac[6] gain=-1.0849(23)e-4 V/bit S_min=881.75 dof=254
-caldac[6] set to 121.705
-linear: ao 1, zero offset, low gain
-caldac[8] gain=-8.0789(22)e-4 V/bit S_min=1381.15 dof=254
-caldac[8] set to 121.668
-linear: ao 1, reference voltage, low gain
-caldac[9] gain=-1.0720(23)e-4 V/bit S_min=1017.36 dof=254
-caldac[9] set to 91.172
-ai, bipolar zero offset, low gain
-offset -3.8(35)e-4, target 0
-caldac[0] gain=-1.145(28)e-5 V/bit S_min=247.757 dof=254
-caldac[1] gain=-8.1521(21)e-4 V/bit S_min=1300.88 dof=254
-ai, bipolar zero offset, high gain
-offset 9.5(18)e-6, target 0
-caldac[0] gain=-8.8809(13)e-6 V/bit S_min=1207.56 dof=254
-caldac[1] gain=-4.0803(13)e-6 V/bit S_min=939.208 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.99935(34), target 5
-caldac[0] gain=-1.166(28)e-5 V/bit S_min=212.993 dof=254
-caldac[1] gain=-8.0868(22)e-4 V/bit S_min=689.576 dof=254
-caldac[3] gain=-4.8110(21)e-4 V/bit S_min=855.613 dof=254
-ai, unipolar zero offset, low gain
-offset nan, target 0
-caldac[1] gain=-8.0576(48)e-4 V/bit S_min=247.142 dof=146
-caldac[2] gain=-9.5271(72)e-4 V/bit S_min=244.411 dof=113
-ao 0, zero offset, low gain
-offset 2.90(29)e-3, target 0.002442
-caldac[0] gain=-8.89(22)e-6 V/bit S_min=213.697 dof=254
-caldac[1] gain=-8.1490(22)e-4 V/bit S_min=1110.11 dof=254
-caldac[4] gain=-1.2912(23)e-4 V/bit S_min=1033.65 dof=254
-caldac[5] gain=-8.1167(22)e-4 V/bit S_min=1378.3 dof=254
-ao 0, reference voltage, low gain
-offset -1.07(37)e-3, target -0.001221
-caldac[0] gain=-1.229(30)e-5 V/bit S_min=243.406 dof=254
-caldac[1] gain=-8.1459(22)e-4 V/bit S_min=1120.25 dof=254
-caldac[4] gain=-1.6185(23)e-4 V/bit S_min=1064.04 dof=254
-caldac[5] gain=-8.1219(22)e-4 V/bit S_min=1358.58 dof=254
-caldac[6] gain=-1.0826(23)e-4 V/bit S_min=696.747 dof=254
-ao 1, zero offset, low gain
-offset 3.17(28)e-3, target 0.002442
-caldac[0] gain=-8.55(22)e-6 V/bit S_min=219.291 dof=254
-caldac[1] gain=-8.1475(21)e-4 V/bit S_min=1397.03 dof=254
-caldac[7] gain=-1.2878(23)e-4 V/bit S_min=1140.38 dof=254
-caldac[8] gain=-8.0727(22)e-4 V/bit S_min=1409.3 dof=254
-ao 1, reference voltage, low gain
-offset -1.41(34)e-3, target -0.001221
-caldac[0] gain=-1.273(30)e-5 V/bit S_min=298.033 dof=254
-caldac[1] gain=-8.1497(21)e-4 V/bit S_min=1353.84 dof=254
-caldac[7] gain=-1.6111(22)e-4 V/bit S_min=1147.71 dof=254
-caldac[8] gain=-8.0760(21)e-4 V/bit S_min=1405.33 dof=254
-caldac[9] gain=-1.0714(23)e-4 V/bit S_min=1031.91 dof=254
diff --git a/comedi_calibrate/results/at-mio-16xe-50 b/comedi_calibrate/results/at-mio-16xe-50
deleted file mode 100644 (file)
index e21a70f..0000000
+++ /dev/null
@@ -1,201 +0,0 @@
-eeprom reference lsb=158 msb=253 
-resulting reference voltage: 4.99939 
-Warning: device may not be not fully calibrated due to insufficient 
-information. 
-Please file a bug report at https://bugs.comedi.org/ and attach this output. 
-This output will also allow comedi_calibrate to execute more 
-quickly in the future. 
-Forcing option: --verbose 
-Forcing options: --reset --dump --calibrate --results 
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp 
-Driver name: ni_atmio 
-Device name: at-mio-16xe-50 
-Id: ni.c,v 1.130 2004/09/09 21:43:16 fmhess Exp 
-Comedi version: 0.7.70 
-ai, bipolar zero offset, low gain 
-reading 8.702(52)e-4, target 0 
-caldac[2] gain=1.5894(66)e-5 V/bit S_min=23.7848 dof=14 
-caldac[8] gain=2.178(41)e-7 V/bit S_min=1.29267 dof=14 
-ai, bipolar zero offset, high gain 
-reading -3.9045(79)e-5, target 0 
-caldac[2] gain=1.520(10)e-7 V/bit S_min=4.67558 dof=14 
-caldac[8] gain=2.19144(64)e-7 V/bit S_min=20.9496 dof=14 
-ai, bipolar voltage reference, low gain 
-reading 5.0018421(60), target 4.99939 
-caldac[0] gain=-4.4997(80)e-5 V/bit S_min=9.02987 dof=14 
-caldac[1] gain=-2.572(80)e-6 V/bit S_min=1.64554 dof=14 
-caldac[2] gain=1.5502(78)e-5 V/bit S_min=7.28076 dof=14 
-caldac[8] gain=2.205(50)e-7 V/bit S_min=3.47414 dof=14 
-ai, unipolar zero offset, low gain 
-reading 5.837(31)e-4, target 7.62951e-05 
-caldac[2] gain=1.0453(25)e-5 V/bit S_min=18911.5 dof=14 
-caldac[8] gain=2.175(25)e-7 V/bit S_min=3.93912 dof=14 
-ai, unipolar zero offset, high gain 
-reading 0.0( 0)e-2147483648, target 7.62951e-07 
-caldac[8] gain=8.4347(24)e-8 V/bit S_min=4.75406e+06 dof=14 
-ai, unipolar voltage reference, low gain 
-reading 5.0016137(50), target 4.99939 
-caldac[0] gain=-4.5348(63)e-5 V/bit S_min=8.22606 dof=14 
-caldac[1] gain=-2.581(62)e-6 V/bit S_min=2.3327 dof=14 
-caldac[2] gain=1.5310(63)e-5 V/bit S_min=7.29289 dof=14 
-caldac[8] gain=2.190(39)e-7 V/bit S_min=2.95487 dof=14 
-ao 0, zero offset, low gain 
-reading -1.9247(46)e-3, target 0.002442 
-caldac[2] gain=1.5451(66)e-5 V/bit S_min=8.45162 dof=14 
-caldac[6] gain=-3.88281(65)e-4 V/bit S_min=38.3974 dof=14 
-caldac[8] gain=2.216(41)e-7 V/bit S_min=3.6559 dof=14 
-ao 0, reference voltage, low gain 
-reading 7.9920444(66), target 8.00244 
-caldac[0] gain=-7.2839(89)e-5 V/bit S_min=13.6618 dof=14 
-caldac[1] gain=-4.163(88)e-6 V/bit S_min=5.82747 dof=14 
-caldac[2] gain=1.5264(89)e-5 V/bit S_min=6.10978 dof=14 
-caldac[4] gain=-3.07810(88)e-4 V/bit S_min=20.949 dof=14 
-caldac[6] gain=-3.88185(90)e-4 V/bit S_min=40.6543 dof=14 
-caldac[8] gain=2.192(56)e-7 V/bit S_min=4.36919 dof=14 
-ao 0, linearity (mid), low gain 
-reading 3.9952256(53), target 4.00244 
-caldac[0] gain=-3.6431(75)e-5 V/bit S_min=33.7371 dof=14 
-caldac[1] gain=-2.120(75)e-6 V/bit S_min=3.44698 dof=14 
-caldac[2] gain=1.5684(76)e-5 V/bit S_min=8.11184 dof=14 
-caldac[4] gain=-1.53775(76)e-4 V/bit S_min=31.35 dof=14 
-caldac[6] gain=-3.87818(77)e-4 V/bit S_min=66.0084 dof=14 
-caldac[8] gain=2.182(48)e-7 V/bit S_min=2.57404 dof=14 
-ao 1, zero offset, low gain 
-reading -2.161(47)e-4, target 0.002442 
-caldac[2] gain=1.5983(66)e-5 V/bit S_min=20.0622 dof=14 
-caldac[7] gain=-3.88877(65)e-4 V/bit S_min=31.5066 dof=14 
-caldac[8] gain=2.466(43)e-7 V/bit S_min=9.21397 dof=14 
-ao 1, reference voltage, low gain 
-reading 7.9947637(69), target 8.00244 
-caldac[0] gain=-7.2737(89)e-5 V/bit S_min=20.226 dof=14 
-caldac[1] gain=-4.199(89)e-6 V/bit S_min=3.49548 dof=14 
-caldac[2] gain=1.5387(88)e-5 V/bit S_min=10.3983 dof=14 
-caldac[5] gain=-3.07659(90)e-4 V/bit S_min=18.9123 dof=14 
-caldac[7] gain=-3.88741(92)e-4 V/bit S_min=13.7778 dof=14 
-caldac[8] gain=2.202(57)e-7 V/bit S_min=2.97218 dof=14 
-ao 1, linearity (mid), low gain 
-reading 3.9985295(58), target 4.00244 
-caldac[0] gain=-3.6053(74)e-5 V/bit S_min=9.56347 dof=14 
-caldac[1] gain=-2.043(78)e-6 V/bit S_min=5.49799 dof=14 
-caldac[2] gain=1.5207(74)e-5 V/bit S_min=14.9714 dof=14 
-caldac[5] gain=-1.53896(74)e-4 V/bit S_min=35.5435 dof=14 
-caldac[7] gain=-3.88424(74)e-4 V/bit S_min=34.7964 dof=14 
-caldac[8] gain=2.223(47)e-7 V/bit S_min=5.20192 dof=14 
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage reference, low gain 
-caldac[0] set to 161 
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset, high gain 
-caldac[2] set to 70 
-binary: ai, bipolar zero offset, high gain 
-caldac[8] set to 2261 
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage reference, low gain 
-caldac[1] set to 161 
-binary peg: ai, unipolar zero offset, low gain 
-caldac[8] set to 4095 
-binary peg: ai, unipolar zero offset, low gain 
-caldac[2] set to 255 
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar voltage reference, low gain 
-caldac[0] set to 165 
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar zero offset, high gain 
-caldac[2] set to 90 
-binary: ai, unipolar zero offset, high gain 
-caldac[8] set to 2260 
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar voltage reference, low gain 
-caldac[1] set to 111 
-binary: ao 0, zero offset, low gain 
-caldac[6] set to 113 
-binary: ao 0, reference voltage, low gain 
-caldac[4] set to 99 
-binary: ao 1, zero offset, low gain 
-caldac[7] set to 118 
-binary: ao 1, reference voltage, low gain 
-caldac[5] set to 102 
-writing calibration to /usr/local/var/lib/comedi/calibrations/ni_atmio_at-mio-16xe-50_comedi0 
-ai, bipolar zero offset, low gain 
-applied calibration for subdev 0, channel 0, range 0, aref 3 
-reading 3.07(54)e-5, target 0 
-caldac[2] gain=1.5847(67)e-5 V/bit S_min=21.267 dof=14 
-caldac[8] gain=2.348(45)e-7 V/bit S_min=10.5767 dof=14 
-ai, bipolar zero offset, high gain 
-applied calibration for subdev 0, channel 0, range 3, aref 3 
-reading -4.62(84)e-7, target 0 
-caldac[2] gain=1.587(10)e-7 V/bit S_min=15.1738 dof=14 
-caldac[8] gain=2.19243(66)e-7 V/bit S_min=16.709 dof=14 
-ai, bipolar voltage reference, low gain 
-applied calibration for subdev 0, channel 5, range 0, aref 3 
-reading 4.9994159(65), target 4.99939 
-caldac[0] gain=-4.5081(92)e-5 V/bit S_min=7.55849 dof=14 
-caldac[1] gain=-2.660(90)e-6 V/bit S_min=2.67796 dof=14 
-caldac[2] gain=1.5354(91)e-5 V/bit S_min=10.7686 dof=14 
-caldac[8] gain=2.094(55)e-7 V/bit S_min=8.07515 dof=14 
-ai, unipolar zero offset, low gain 
-applied calibration for subdev 0, channel 0, range 4, aref 3 
-reading 8.52(24)e-5, target 7.62951e-05 
-caldac[2] gain=1.0743(26)e-5 V/bit S_min=17410.1 dof=14 
-caldac[8] gain=1.091(12)e-7 V/bit S_min=2005.75 dof=14 
-ai, unipolar zero offset, high gain 
-applied calibration for subdev 0, channel 0, range 7, aref 3 
-reading 7.57(38)e-7, target 7.62951e-07 
-caldac[2] gain=1.0248(55)e-7 V/bit S_min=3861.99 dof=14 
-caldac[8] gain=8.2335(25)e-8 V/bit S_min=4.23951e+06 dof=14 
-ai, unipolar voltage reference, low gain 
-applied calibration for subdev 0, channel 5, range 4, aref 3 
-reading 4.9993837(54), target 4.99939 
-caldac[0] gain=-4.5276(79)e-5 V/bit S_min=7.4383 dof=14 
-caldac[1] gain=-2.588(81)e-6 V/bit S_min=2.02124 dof=14 
-caldac[2] gain=1.5514(77)e-5 V/bit S_min=2.5417 dof=14 
-caldac[8] gain=2.186(39)e-7 V/bit S_min=0.610843 dof=14 
-ao 0, zero offset, low gain 
-applied calibration for subdev 1, channel 0, range 0, aref 0 
-applied calibration for subdev 0, channel 2, range 0, aref 3 
-reading 2.7308(56)e-3, target 0.002442 
-caldac[2] gain=1.5239(65)e-5 V/bit S_min=16.0921 dof=14 
-caldac[6] gain=-3.87961(70)e-4 V/bit S_min=30.1096 dof=14 
-caldac[8] gain=2.208(45)e-7 V/bit S_min=3.57473 dof=14 
-ao 0, reference voltage, low gain 
-applied calibration for subdev 1, channel 0, range 0, aref 0 
-applied calibration for subdev 0, channel 2, range 0, aref 3 
-reading 8.0026110(82), target 8.00244 
-caldac[0] gain=-7.267(11)e-5 V/bit S_min=10.4362 dof=14 
-caldac[1] gain=-4.03(11)e-6 V/bit S_min=6.47914 dof=14 
-caldac[2] gain=1.533(11)e-5 V/bit S_min=8.14652 dof=14 
-caldac[4] gain=-3.07606(90)e-4 V/bit S_min=22.6917 dof=14 
-caldac[6] gain=-3.8787(10)e-4 V/bit S_min=16.0105 dof=14 
-caldac[8] gain=1.991(68)e-7 V/bit S_min=8.21831 dof=14 
-ao 0, linearity (mid), low gain 
-applied calibration for subdev 1, channel 0, range 0, aref 0 
-applied calibration for subdev 0, channel 2, range 0, aref 3 
-reading 4.0027135(69), target 4.00244 
-caldac[0] gain=-3.6703(87)e-5 V/bit S_min=13.3184 dof=14 
-caldac[1] gain=-1.930(84)e-6 V/bit S_min=5.0267 dof=14 
-caldac[2] gain=1.5755(79)e-5 V/bit S_min=10.9698 dof=14 
-caldac[4] gain=-1.53823(79)e-4 V/bit S_min=27.2484 dof=14 
-caldac[6] gain=-3.87744(75)e-4 V/bit S_min=64.401 dof=14 
-caldac[8] gain=2.263(55)e-7 V/bit S_min=4.04184 dof=14 
-ao 1, zero offset, low gain 
-applied calibration for subdev 1, channel 1, range 0, aref 0 
-applied calibration for subdev 0, channel 3, range 0, aref 3 
-reading 2.5082(53)e-3, target 0.002442 
-caldac[2] gain=1.5365(70)e-5 V/bit S_min=13.0555 dof=14 
-caldac[7] gain=-3.88689(67)e-4 V/bit S_min=31.6179 dof=14 
-caldac[8] gain=2.263(41)e-7 V/bit S_min=2.29018 dof=14 
-ao 1, reference voltage, low gain 
-applied calibration for subdev 1, channel 1, range 0, aref 0 
-applied calibration for subdev 0, channel 3, range 0, aref 3 
-reading 8.0025577(70), target 8.00244 
-caldac[0] gain=-7.2532(90)e-5 V/bit S_min=17.0167 dof=14 
-caldac[1] gain=-4.116(89)e-6 V/bit S_min=3.56061 dof=14 
-caldac[2] gain=1.5172(89)e-5 V/bit S_min=4.70791 dof=14 
-caldac[5] gain=-3.07483(91)e-4 V/bit S_min=20.5867 dof=14 
-caldac[7] gain=-3.88488(91)e-4 V/bit S_min=27.1674 dof=14 
-caldac[8] gain=2.029(55)e-7 V/bit S_min=9.02938 dof=14 
-ao 1, linearity (mid), low gain 
-applied calibration for subdev 1, channel 1, range 0, aref 0 
-applied calibration for subdev 0, channel 3, range 0, aref 3 
-reading 4.0037143(63), target 4.00244 
-caldac[0] gain=-3.6621(78)e-5 V/bit S_min=31.0151 dof=14 
-caldac[1] gain=-2.347(82)e-6 V/bit S_min=4.89731 dof=14 
-caldac[2] gain=1.5844(78)e-5 V/bit S_min=13.4822 dof=14 
-caldac[5] gain=-1.53826(76)e-4 V/bit S_min=21.1332 dof=14 
-caldac[7] gain=-3.88114(79)e-4 V/bit S_min=37.9622 dof=14 
-caldac[8] gain=2.422(50)e-7 V/bit S_min=1.74161 dof=14 
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/measurement-computing-pci-das1000 b/comedi_calibrate/results/measurement-computing-pci-das1000
deleted file mode 100644 (file)
index e980810..0000000
+++ /dev/null
@@ -1,239 +0,0 @@
-Warning:
-device may not be not fully calibrated due to insufficient information.
-Please file a bug report at https://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing option: --verbose
-Forcing options: --reset --dump --calibrate --results
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp
-Driver name: cb_pcidas
-Device name: pci-das1000
-Id: cb.c,v 1.44 2004/08/02 00:10:47 fmhess Exp
-Comedi version: 0.7.69
-calibration source 0, range 0, ground referenced
-reading 7.984(52)e-3, target 0
-caldac[6] gain=-1.86581(56)e-3 V/bit S_min=421.042 dof=14
-caldac[7] gain=-2.0112(60)e-4 V/bit S_min=267.505 dof=14
-calibration source 1, range 0, ground referenced
-reading 7.034803(50), target 7.0076
-caldac[6] gain=-1.85979(48)e-3 V/bit S_min=435.119 dof=14
-caldac[7] gain=-2.0578(58)e-4 V/bit S_min=232.528 dof=14
-caldac[8] gain=7.935(14)e-4 V/bit S_min=49202.5 dof=14
-calibration source 0, range 1, ground referenced
-reading 3.935(24)e-3, target 0
-caldac[6] gain=-9.3299(28)e-4 V/bit S_min=422.313 dof=14
-caldac[7] gain=-1.0051(29)e-4 V/bit S_min=275.887 dof=14
-calibration source 2, range 1, ground referenced
-reading 3.513779(45), target 3.50385
-caldac[6] gain=-9.3104(29)e-4 V/bit S_min=237.822 dof=14
-caldac[7] gain=-1.0336(29)e-4 V/bit S_min=270.512 dof=14
-caldac[8] gain=3.9435(59)e-4 V/bit S_min=67713.5 dof=14
-calibration source 0, range 2, ground referenced
-reading 1.938(11)e-3, target 0
-caldac[6] gain=-4.6650(14)e-4 V/bit S_min=416.31 dof=14
-caldac[7] gain=-5.024(14)e-5 V/bit S_min=273.133 dof=14
-calibration source 3, range 2, ground referenced
-reading 1.757882(15), target 1.75191
-caldac[6] gain=-4.6544(13)e-4 V/bit S_min=300.893 dof=14
-caldac[7] gain=-5.176(14)e-5 V/bit S_min=286.703 dof=14
-caldac[8] gain=1.9716(29)e-4 V/bit S_min=72646.8 dof=14
-calibration source 0, range 3, ground referenced
-reading 9.658(52)e-4, target 0
-caldac[6] gain=-2.33233(65)e-4 V/bit S_min=498.347 dof=14
-caldac[7] gain=-2.5166(69)e-5 V/bit S_min=321.382 dof=14
-calibration source 4, range 3, ground referenced
-reading 0.8794088(33), target 0.875988
-caldac[6] gain=-2.32900(74)e-4 V/bit S_min=240.237 dof=14
-caldac[7] gain=-2.5995(67)e-5 V/bit S_min=358.593 dof=14
-caldac[8] gain=9.843(12)e-5 V/bit S_min=105395 dof=14
-calibration source 0, range 4, ground referenced
-reading nan, target 0.001221
-caldac[6] gain=-1.86589(58)e-3 V/bit S_min=432.953 dof=6
-caldac[7] gain=-2.0489(65)e-4 V/bit S_min=114.055 dof=6
-caldac[8] gain=-1.0294(11)e-3 V/bit S_min=51645.4 dof=6
-calibration source 1, range 4, ground referenced
-reading 7.021026(24), target 7.0076
-caldac[6] gain=-1.86109(34)e-3 V/bit S_min=163.347 dof=14
-caldac[7] gain=-2.0429(30)e-4 V/bit S_min=210.313 dof=14
-caldac[8] gain=2.2589(64)e-4 V/bit S_min=18682.3 dof=14
-calibration source 0, range 5, ground referenced
-reading nan, target 0.000610501
-caldac[6] gain=-9.3253(29)e-4 V/bit S_min=336.749 dof=6
-caldac[7] gain=-1.0210(32)e-4 V/bit S_min=101.315 dof=6
-caldac[8] gain=-5.1395(62)e-4 V/bit S_min=37432.3 dof=6
-calibration source 2, range 5, ground referenced
-reading 3.508553(28), target 3.50385
-caldac[6] gain=-9.3014(14)e-4 V/bit S_min=387.281 dof=14
-caldac[7] gain=-1.0187(15)e-4 V/bit S_min=254.988 dof=14
-caldac[8] gain=1.1423(31)e-4 V/bit S_min=22826.7 dof=14
-calibration source 0, range 6, ground referenced
-reading nan, target 0.00030525
-caldac[6] gain=-4.6627(14)e-4 V/bit S_min=357.44 dof=6
-caldac[7] gain=-5.109(15)e-5 V/bit S_min=122.391 dof=6
-caldac[8] gain=-2.5700(29)e-4 V/bit S_min=42442.6 dof=6
-calibration source 3, range 6, ground referenced
-reading 1.754741(12), target 1.75191
-caldac[6] gain=-4.65053(71)e-4 V/bit S_min=380.121 dof=14
-caldac[7] gain=-5.0945(77)e-5 V/bit S_min=239.611 dof=14
-caldac[8] gain=5.706(15)e-5 V/bit S_min=25286.7 dof=14
-calibration source 0, range 7, ground referenced
-reading nan, target 0.000152625
-caldac[6] gain=-2.33174(68)e-4 V/bit S_min=471.264 dof=6
-caldac[7] gain=-2.5583(74)e-5 V/bit S_min=125.317 dof=6
-caldac[8] gain=-1.2843(13)e-4 V/bit S_min=51461.3 dof=6
-calibration source 4, range 7, ground referenced
-reading 0.8776542(39), target 0.875988
-caldac[6] gain=-2.32654(39)e-4 V/bit S_min=205.103 dof=14
-caldac[7] gain=-2.5466(39)e-5 V/bit S_min=220.703 dof=14
-caldac[8] gain=2.8303(68)e-5 V/bit S_min=28342 dof=14
-relative binary: calibration source 1, range 0, ground referenced,
-calibration source 0, range 0, ground referenced
-caldac[8] set to 38
-binary: calibration source 0, range 0, ground referenced
-caldac[6] set to 131
-binary: calibration source 0, range 0, ground referenced
-caldac[7] set to 134
-relative binary: calibration source 2, range 1, ground referenced,
-calibration source 0, range 1, ground referenced
-caldac[8] set to 39
-binary: calibration source 0, range 1, ground referenced
-caldac[6] set to 131
-binary: calibration source 0, range 1, ground referenced
-caldac[7] set to 133
-relative binary: calibration source 3, range 2, ground referenced,
-calibration source 0, range 2, ground referenced
-caldac[8] set to 39
-binary: calibration source 0, range 2, ground referenced
-caldac[6] set to 131
-binary: calibration source 0, range 2, ground referenced
-caldac[7] set to 133
-relative binary: calibration source 4, range 3, ground referenced,
-calibration source 0, range 3, ground referenced
-caldac[8] set to 37
-binary: calibration source 0, range 3, ground referenced
-caldac[6] set to 131
-binary: calibration source 0, range 3, ground referenced
-caldac[7] set to 133
-relative binary: calibration source 1, range 4, ground referenced,
-calibration source 0, range 4, ground referenced
-caldac[8] set to 43
-binary: calibration source 0, range 4, ground referenced
-caldac[6] set to 133
-binary: calibration source 0, range 4, ground referenced
-caldac[7] set to 123
-relative binary: calibration source 2, range 5, ground referenced,
-calibration source 0, range 5, ground referenced
-caldac[8] set to 45
-binary: calibration source 0, range 5, ground referenced
-caldac[6] set to 131
-binary: calibration source 0, range 5, ground referenced
-caldac[7] set to 135
-relative binary: calibration source 3, range 6, ground referenced,
-calibration source 0, range 6, ground referenced
-caldac[8] set to 44
-binary: calibration source 0, range 6, ground referenced
-caldac[6] set to 132
-binary: calibration source 0, range 6, ground referenced
-caldac[7] set to 129
-relative binary: calibration source 4, range 7, ground referenced,
-calibration source 0, range 7, ground referenced
-caldac[8] set to 43
-binary: calibration source 0, range 7, ground referenced
-caldac[6] set to 133
-binary: calibration source 0, range 7, ground referenced
-caldac[7] set to 123
-writing calibration to
-/usr/local/var/lib/comedi/calibrations/cb_pcidas_pci-das1000_comedi0
-calibration source 0, range 0, ground referenced
-applied calibration for subdev 0, channel 0, range 0, aref 0
-reading -1.9(76)e-5, target 0
-caldac[6] gain=-1.85819(58)e-3 V/bit S_min=246.116 dof=14
-caldac[7] gain=-2.0293(57)e-4 V/bit S_min=365.659 dof=14
-calibration source 1, range 0, ground referenced
-applied calibration for subdev 0, channel 0, range 0, aref 0
-reading 7.006110(18), target 7.0076
-caldac[6] gain=-1.85649(54)e-3 V/bit S_min=391.393 dof=14
-caldac[7] gain=-2.0482(58)e-4 V/bit S_min=183.339 dof=14
-caldac[8] gain=7.908(14)e-4 V/bit S_min=54438.7 dof=14
-calibration source 0, range 1, ground referenced
-applied calibration for subdev 0, channel 0, range 1, aref 0
-reading 2.29(37)e-4, target 0
-caldac[6] gain=-9.2926(28)e-4 V/bit S_min=256.391 dof=14
-caldac[7] gain=-1.0162(29)e-4 V/bit S_min=335.151 dof=14
-calibration source 2, range 1, ground referenced
-applied calibration for subdev 0, channel 0, range 1, aref 0
-reading 3.501951(38), target 3.50385
-caldac[6] gain=-9.2937(29)e-4 V/bit S_min=230.487 dof=14
-caldac[7] gain=-1.0290(29)e-4 V/bit S_min=313.108 dof=14
-caldac[8] gain=3.9408(63)e-4 V/bit S_min=59884.6 dof=14
-calibration source 0, range 2, ground referenced
-applied calibration for subdev 0, channel 0, range 2, aref 0
-reading 2.1(19)e-5, target 0
-caldac[6] gain=-4.6454(14)e-4 V/bit S_min=265.144 dof=14
-caldac[7] gain=-5.073(13)e-5 V/bit S_min=361.828 dof=14
-calibration source 3, range 2, ground referenced
-applied calibration for subdev 0, channel 0, range 2, aref 0
-reading 1.750835(19), target 1.75191
-caldac[6] gain=-4.6476(14)e-4 V/bit S_min=273.22 dof=14
-caldac[7] gain=-5.140(14)e-5 V/bit S_min=331.63 dof=14
-caldac[8] gain=1.9696(31)e-4 V/bit S_min=60489.6 dof=14
-calibration source 0, range 3, ground referenced
-applied calibration for subdev 0, channel 0, range 3, aref 0
-reading 4.29(94)e-5, target 0
-caldac[6] gain=-2.32247(67)e-4 V/bit S_min=307.005 dof=14
-caldac[7] gain=-2.5334(66)e-5 V/bit S_min=393.089 dof=14
-calibration source 4, range 3, ground referenced
-applied calibration for subdev 0, channel 0, range 3, aref 0
-reading 0.8757631(15), target 0.875988
-caldac[6] gain=-2.32295(53)e-4 V/bit S_min=562.905 dof=14
-caldac[7] gain=-2.5575(65)e-5 V/bit S_min=304.338 dof=14
-caldac[8] gain=9.831(13)e-5 V/bit S_min=85232.3 dof=14
-calibration source 0, range 4, ground referenced
-applied calibration for subdev 0, channel 0, range 4, aref 0
-reading 1.977(30)e-3, target 0.001221
-caldac[6] gain=-1.07986(19)e-3 V/bit S_min=5.59189e+06 dof=14
-caldac[7] gain=-1.1591(16)e-4 V/bit S_min=98640 dof=14
-caldac[8] gain=-3.3993(24)e-4 V/bit S_min=1.30899e+06 dof=14
-calibration source 1, range 4, ground referenced
-applied calibration for subdev 0, channel 0, range 4, aref 0
-reading 7.006878(35), target 7.0076
-caldac[6] gain=-1.85669(32)e-3 V/bit S_min=195.997 dof=14
-caldac[7] gain=-2.0577(32)e-4 V/bit S_min=164.816 dof=14
-caldac[8] gain=2.2485(57)e-4 V/bit S_min=24935.5 dof=14
-calibration source 0, range 5, ground referenced
-applied calibration for subdev 0, channel 0, range 5, aref 0
-reading 8.53(18)e-4, target 0.000610501
-caldac[6] gain=-5.29015(76)e-4 V/bit S_min=9.15855e+06 dof=14
-caldac[7] gain=-5.3594(76)e-5 V/bit S_min=113696 dof=14
-caldac[8] gain=-1.6898(12)e-4 V/bit S_min=1.31063e+06 dof=14
-calibration source 2, range 5, ground referenced
-applied calibration for subdev 0, channel 0, range 5, aref 0
-reading 3.502874(23), target 3.50385
-caldac[6] gain=-9.2851(13)e-4 V/bit S_min=417.629 dof=14
-caldac[7] gain=-1.0289(17)e-4 V/bit S_min=142.272 dof=14
-caldac[8] gain=1.1351(34)e-4 V/bit S_min=17370.8 dof=14
-calibration source 0, range 6, ground referenced
-applied calibration for subdev 0, channel 0, range 6, aref 0
-reading 4.155(89)e-4, target 0.00030525
-caldac[6] gain=-2.67135(46)e-4 V/bit S_min=6.24559e+06 dof=14
-caldac[7] gain=-2.7738(41)e-5 V/bit S_min=102466 dof=14
-caldac[8] gain=-8.4423(61)e-5 V/bit S_min=1.26481e+06 dof=14
-calibration source 3, range 6, ground referenced
-applied calibration for subdev 0, channel 0, range 6, aref 0
-reading 1.7515680(93), target 1.75191
-caldac[6] gain=-4.64172(84)e-4 V/bit S_min=179.131 dof=14
-caldac[7] gain=-5.1435(78)e-5 V/bit S_min=168.279 dof=14
-caldac[8] gain=5.689(16)e-5 V/bit S_min=18619.4 dof=14
-calibration source 0, range 7, ground referenced
-applied calibration for subdev 0, channel 0, range 7, aref 0
-reading 2.224(42)e-4, target 0.000152625
-caldac[6] gain=-1.34937(22)e-4 V/bit S_min=6.39087e+06 dof=14
-caldac[7] gain=-1.4429(19)e-5 V/bit S_min=120304 dof=14
-caldac[8] gain=-4.2386(29)e-5 V/bit S_min=1.43736e+06 dof=14
-calibration source 4, range 7, ground referenced
-applied calibration for subdev 0, channel 0, range 7, aref 0
-reading 0.8759354(47), target 0.875988
-caldac[6] gain=-2.32075(30)e-4 V/bit S_min=569.525 dof=14
-caldac[7] gain=-2.5747(38)e-5 V/bit S_min=168.221 dof=14
-caldac[8] gain=2.8316(69)e-5 V/bit S_min=27662.3 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/measurement-computing-pci-das1602-16 b/comedi_calibrate/results/measurement-computing-pci-das1602-16
deleted file mode 100644 (file)
index 2d8e424..0000000
+++ /dev/null
@@ -1,324 +0,0 @@
-# ./comedi_calibrate
-WARNING: you need comedi driver version 0.7.67 or later
-for this calibration to work properly
-eeprom ch 0x80 gives calibration source of 7.00749V
-eeprom ch 0x84 gives calibration source of 3.50301V
-eeprom ch 0x88 gives calibration source of 1.75135V
-eeprom ch 0x8c gives calibration source of 0.875656V
-eeprom ch 0x80 gives calibration source of 7.00749V
-eeprom ch 0x84 gives calibration source of 3.50301V
-eeprom ch 0x88 gives calibration source of 1.75135V
-eeprom ch 0x8c gives calibration source of 0.875656V
-Warning: device may not be not fully calibrated due to insufficient information.
-Please file a bug report at http://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Id: comedi_calibrate.c,v 1.84 2003/06/12 19:57:43 fmhess Exp 
-Driver name: cb_pcidas
-Device name: pci-das1602/16
-Id: cb.c,v 1.37 2003/05/31 16:59:29 fmhess Exp 
-Comedi version: 0.7.66
-calibration source 0, range 0, ground referenced
-reading 2.7663(96)e-3, target 0
-caldac[9] gain=1.0499(13)e-4 V/bit S_min=10763.3 dof=14
-caldac[10] gain=6.129(13)e-5 V/bit S_min=387.025 dof=14
-calibration source 1, range 0, ground referenced
-reading 7.013937(22), target 7.00749
-caldac[8] gain=-1.2075(13)e-4 V/bit S_min=31.9052 dof=14
-caldac[9] gain=1.1159(13)e-4 V/bit S_min=99631.2 dof=14
-caldac[10] gain=5.835(13)e-5 V/bit S_min=31.7509 dof=14
-calibration source 0, range 1, ground referenced
-reading 1.578(18)e-3, target 0
-caldac[9] gain=5.2492(69)e-5 V/bit S_min=10014.6 dof=14
-caldac[10] gain=5.9674(66)e-5 V/bit S_min=351.04 dof=14
-calibration source 2, range 1, ground referenced
-reading 3.49594(28), target 3.50301
-caldac[8] gain=-6.0384(73)e-5 V/bit S_min=28.6973 dof=14
-caldac[9] gain=5.5787(72)e-5 V/bit S_min=80811.8 dof=14
-caldac[10] gain=5.8134(72)e-5 V/bit S_min=28.0956 dof=14
-calibration source 0, range 2, ground referenced
-reading 7.749(86)e-4, target 0
-caldac[9] gain=2.6285(37)e-5 V/bit S_min=8533.24 dof=14
-caldac[10] gain=5.8980(35)e-5 V/bit S_min=279.341 dof=14
-calibration source 3, range 2, ground referenced
-reading 1.74975(11), target 1.75135
-caldac[1] gain=2.19(36)e-7 V/bit S_min=44.3197 dof=14
-caldac[8] gain=-3.0211(35)e-5 V/bit S_min=30.8117 dof=14
-caldac[9] gain=2.7886(35)e-5 V/bit S_min=84647.5 dof=14
-caldac[10] gain=5.8444(35)e-5 V/bit S_min=107.592 dof=14
-calibration source 0, range 3, ground referenced
-reading 3.579(43)e-4, target 0
-caldac[9] gain=1.3096(21)e-5 V/bit S_min=6620.4 dof=14
-caldac[10] gain=5.8613(21)e-5 V/bit S_min=216.875 dof=14
-calibration source 4, range 3, ground referenced
-reading 0.875432(48), target 0.875656
-caldac[8] gain=-1.5145(21)e-5 V/bit S_min=19.1356 dof=14
-caldac[9] gain=1.3957(20)e-5 V/bit S_min=61688.7 dof=14
-caldac[10] gain=5.8337(21)e-5 V/bit S_min=131.817 dof=14
-calibration source 0, range 4, ground referenced
-reading 0.0( 0)e-2147483648, target 7.62951e-05
-caldac[8] gain=2.6693(25)e-5 V/bit S_min=573096 dof=14
-caldac[9] gain=2.1697(21)e-5 V/bit S_min=1.03367e+06 dof=14
-caldac[10] gain=1.4275(22)e-5 V/bit S_min=276225 dof=14
-calibration source 1, range 4, ground referenced
-reading 7.009349(19), target 7.00749
-caldac[8] gain=-3.5058(68)e-5 V/bit S_min=22.6603 dof=14
-caldac[9] gain=5.3978(67)e-5 V/bit S_min=41855.2 dof=14
-caldac[10] gain=5.8287(68)e-5 V/bit S_min=44.4778 dof=14
-calibration source 0, range 5, ground referenced
-reading 4.5(12)e-5, target 3.81476e-05
-caldac[8] gain=1.3346(14)e-5 V/bit S_min=493324 dof=14
-caldac[9] gain=1.0849(11)e-5 V/bit S_min=910509 dof=14
-caldac[10] gain=2.0352(14)e-5 V/bit S_min=911806 dof=14
-calibration source 2, range 5, ground referenced
-reading 3.49364(28), target 3.50301
-caldac[8] gain=-1.7539(47)e-5 V/bit S_min=12.7877 dof=14
-caldac[9] gain=2.7003(47)e-5 V/bit S_min=21764.6 dof=14
-caldac[10] gain=5.8233(46)e-5 V/bit S_min=31.11 dof=14
-calibration source 0, range 6, ground referenced
-reading 2.21(55)e-5, target 1.90738e-05
-caldac[8] gain=6.5107(81)e-6 V/bit S_min=345566 dof=14
-caldac[9] gain=5.2611(66)e-6 V/bit S_min=657889 dof=14
-caldac[10] gain=2.34581(93)e-5 V/bit S_min=2.31823e+06 dof=14
-calibration source 3, range 6, ground referenced
-reading 1.74860(11), target 1.75135
-caldac[8] gain=-8.753(21)e-6 V/bit S_min=8.33917 dof=14
-caldac[9] gain=1.3500(21)e-5 V/bit S_min=27349.9 dof=14
-caldac[10] gain=5.8415(21)e-5 V/bit S_min=159.075 dof=14
-calibration source 0, range 7, ground referenced
-reading 9.8(25)e-6, target 9.53689e-06
-caldac[8] gain=3.0782(54)e-6 V/bit S_min=190038 dof=14
-caldac[9] gain=2.4566(41)e-6 V/bit S_min=396840 dof=14
-caldac[10] gain=2.50425(63)e-5 V/bit S_min=5.11232e+06 dof=14
-calibration source 4, range 7, ground referenced
-reading 0.874858(48), target 0.875656
-caldac[8] gain=-4.354(14)e-6 V/bit S_min=8.02422 dof=14
-caldac[9] gain=6.703(14)e-6 V/bit S_min=14996.1 dof=14
-caldac[10] gain=5.8424(14)e-5 V/bit S_min=229.055 dof=14
-DAC ground calibration source, ch 0, range 0
-reading 1.4854(97)e-3, target 7.62951e-05
-caldac[2] gain=-1.2281(13)e-4 V/bit S_min=364.875 dof=14
-caldac[6] gain=-1.534(15)e-5 V/bit S_min=263.776 dof=14
-caldac[9] gain=1.0515(14)e-4 V/bit S_min=9949.02 dof=14
-caldac[10] gain=6.177(13)e-5 V/bit S_min=411.836 dof=14
-DAC high calibration source, ch 0, range 0
-reading 4.489167(10), target 4.49996
-caldac[0] gain=-5.786(13)e-5 V/bit S_min=38.2987 dof=14
-caldac[1] gain=-4.9996(13)e-4 V/bit S_min=115.588 dof=14
-caldac[2] gain=-1.1998(13)e-4 V/bit S_min=32.8576 dof=14
-caldac[6] gain=-1.339(13)e-5 V/bit S_min=2.78534 dof=14
-caldac[8] gain=-7.800(13)e-5 V/bit S_min=42.0434 dof=14
-caldac[9] gain=1.0820(13)e-4 V/bit S_min=49635.5 dof=14
-caldac[10] gain=5.843(13)e-5 V/bit S_min=42.4727 dof=14
-DAC ground calibration source, ch 0, range 1
-reading -5.73(16)e-4, target 0.00015259
-caldac[2] gain=-1.2285(13)e-4 V/bit S_min=336.07 dof=14
-caldac[6] gain=-1.803(15)e-5 V/bit S_min=215.706 dof=14
-caldac[9] gain=1.0512(13)e-4 V/bit S_min=9673.89 dof=14
-caldac[10] gain=6.171(14)e-5 V/bit S_min=303.678 dof=14
-DAC high calibration source, ch 0, range 1
-reading 8.945938(15), target 8.99992
-caldac[0] gain=-1.1516(13)e-4 V/bit S_min=37.5284 dof=14
-caldac[1] gain=-9.9562(13)e-4 V/bit S_min=135.565 dof=14
-caldac[2] gain=-1.2020(13)e-4 V/bit S_min=45.5624 dof=14
-caldac[6] gain=-1.493(14)e-5 V/bit S_min=54.1826 dof=14
-caldac[8] gain=-1.5442(13)e-4 V/bit S_min=51.372 dof=14
-caldac[9] gain=1.1435(13)e-4 V/bit S_min=133535 dof=14
-caldac[10] gain=5.904(13)e-5 V/bit S_min=44.5935 dof=14
-DAC ground calibration source, ch 0, range 2
-reading 3.265(12)e-3, target 0
-caldac[2] gain=-1.2259(13)e-4 V/bit S_min=386.434 dof=14
-caldac[6] gain=-1.350(13)e-5 V/bit S_min=2.7774 dof=14
-caldac[9] gain=1.0486(13)e-4 V/bit S_min=11310.9 dof=14
-caldac[10] gain=6.105(14)e-5 V/bit S_min=377.666 dof=14
-DAC high calibration source, ch 0, range 2
-reading 4.481010(11), target 4.50004
-caldac[0] gain=-5.714(13)e-5 V/bit S_min=11.5009 dof=14
-caldac[1] gain=-4.9862(13)e-4 V/bit S_min=113.179 dof=14
-caldac[2] gain=-1.1982(13)e-4 V/bit S_min=36.403 dof=14
-caldac[6] gain=-1.375(13)e-5 V/bit S_min=4.81823 dof=14
-caldac[8] gain=-7.692(13)e-5 V/bit S_min=27.7274 dof=14
-caldac[9] gain=1.0774(13)e-4 V/bit S_min=52246.3 dof=14
-caldac[10] gain=5.776(13)e-5 V/bit S_min=9.98411 dof=14
-DAC ground calibration source, ch 0, range 3
-reading 3.334(11)e-3, target 0
-caldac[2] gain=-1.2259(13)e-4 V/bit S_min=391.228 dof=14
-caldac[6] gain=-1.354(13)e-5 V/bit S_min=2.79562 dof=14
-caldac[9] gain=1.0480(13)e-4 V/bit S_min=11427.2 dof=14
-caldac[10] gain=6.103(13)e-5 V/bit S_min=411.259 dof=14
-DAC high calibration source, ch 0, range 3
-reading 8.929456(12), target 9.00008
-caldac[0] gain=-1.1406(13)e-4 V/bit S_min=28.3385 dof=14
-caldac[1] gain=-9.9312(13)e-4 V/bit S_min=70.3478 dof=14
-caldac[2] gain=-1.1935(13)e-4 V/bit S_min=21.4438 dof=14
-caldac[6] gain=-1.385(13)e-5 V/bit S_min=5.90931 dof=14
-caldac[8] gain=-1.5392(13)e-4 V/bit S_min=46.7678 dof=14
-caldac[9] gain=1.1433(13)e-4 V/bit S_min=137228 dof=14
-caldac[10] gain=5.840(13)e-5 V/bit S_min=20.5374 dof=14
-DAC ground calibration source, ch 1, range 0
-reading 2.883(19)e-3, target 7.62951e-05
-caldac[3] gain=-1.2282(13)e-4 V/bit S_min=367.375 dof=14
-caldac[7] gain=-1.345(13)e-5 V/bit S_min=1.15301 dof=14
-caldac[9] gain=1.0506(14)e-4 V/bit S_min=9893.77 dof=14
-caldac[10] gain=6.141(13)e-5 V/bit S_min=446.711 dof=14
-DAC high calibration source, ch 1, range 0
-reading 4.493651(11), target 4.49996
-caldac[3] gain=-1.2033(13)e-4 V/bit S_min=43.4756 dof=14
-caldac[4] gain=-5.804(13)e-5 V/bit S_min=36.9516 dof=14
-caldac[5] gain=-4.9832(13)e-4 V/bit S_min=93.5171 dof=14
-caldac[7] gain=-1.387(13)e-5 V/bit S_min=19.6166 dof=14
-caldac[8] gain=-7.834(13)e-5 V/bit S_min=19.0549 dof=14
-caldac[9] gain=1.0883(13)e-4 V/bit S_min=51334.1 dof=14
-caldac[10] gain=5.898(13)e-5 V/bit S_min=37.4823 dof=14
-DAC ground calibration source, ch 1, range 1
-reading 2.039(10)e-3, target 0.00015259
-caldac[3] gain=-1.2293(13)e-4 V/bit S_min=320.881 dof=14
-caldac[7] gain=-1.364(13)e-5 V/bit S_min=4.50314 dof=14
-caldac[9] gain=1.0510(13)e-4 V/bit S_min=10960.3 dof=14
-caldac[10] gain=6.157(13)e-5 V/bit S_min=304.663 dof=14
-DAC high calibration source, ch 1, range 1
-reading 8.961557(12), target 8.99992
-caldac[3] gain=-1.2007(13)e-4 V/bit S_min=21.6244 dof=14
-caldac[4] gain=-1.1389(13)e-4 V/bit S_min=20.3375 dof=14
-caldac[5] gain=-9.9380(13)e-4 V/bit S_min=74.0387 dof=14
-caldac[7] gain=-1.342(13)e-5 V/bit S_min=4.83011 dof=14
-caldac[8] gain=-1.5430(13)e-4 V/bit S_min=43.7761 dof=14
-caldac[9] gain=1.1429(13)e-4 V/bit S_min=138060 dof=14
-caldac[10] gain=5.814(13)e-5 V/bit S_min=22.6337 dof=14
-DAC ground calibration source, ch 1, range 2
-reading 3.480(12)e-3, target 0
-caldac[3] gain=-1.2282(13)e-4 V/bit S_min=377.068 dof=14
-caldac[7] gain=-1.362(13)e-5 V/bit S_min=3.65634 dof=14
-caldac[9] gain=1.0484(13)e-4 V/bit S_min=11386.1 dof=14
-caldac[10] gain=6.108(13)e-5 V/bit S_min=472.513 dof=14
-DAC high calibration source, ch 1, range 2
-reading 4.484250(11), target 4.50004
-caldac[3] gain=-1.2014(13)e-4 V/bit S_min=39.6119 dof=14
-caldac[4] gain=-5.654(13)e-5 V/bit S_min=5.35334 dof=14
-caldac[5] gain=-4.9730(13)e-4 V/bit S_min=128.899 dof=14
-caldac[7] gain=-1.351(13)e-5 V/bit S_min=2.37465 dof=14
-caldac[8] gain=-7.726(13)e-5 V/bit S_min=47.0742 dof=14
-caldac[9] gain=1.0764(13)e-4 V/bit S_min=51611.9 dof=14
-caldac[10] gain=5.777(13)e-5 V/bit S_min=8.9178 dof=14
-DAC ground calibration source, ch 1, range 3
-reading 3.431(10)e-3, target 0
-caldac[3] gain=-1.2286(13)e-4 V/bit S_min=388.792 dof=14
-caldac[7] gain=-1.362(13)e-5 V/bit S_min=2.9964 dof=14
-caldac[9] gain=1.0482(13)e-4 V/bit S_min=11353.9 dof=14
-caldac[10] gain=6.111(13)e-5 V/bit S_min=494.685 dof=14
-DAC high calibration source, ch 1, range 3
-reading 8.942965(12), target 9.00008
-caldac[3] gain=-1.2047(13)e-4 V/bit S_min=29.349 dof=14
-caldac[4] gain=-1.1433(13)e-4 V/bit S_min=34.8405 dof=14
-caldac[5] gain=-9.9112(13)e-4 V/bit S_min=83.7798 dof=14
-caldac[7] gain=-1.341(13)e-5 V/bit S_min=2.67333 dof=14
-caldac[8] gain=-1.5466(13)e-4 V/bit S_min=19.3449 dof=14
-caldac[9] gain=1.1440(13)e-4 V/bit S_min=133433 dof=14
-caldac[10] gain=5.843(13)e-5 V/bit S_min=50.4174 dof=14
-relative binary: calibration source 0, range 0, ground referenced, calibration source 0, range 3, ground referenced
-caldac[9] set to 93
-binary peg: calibration source 0, range 4, ground referenced
-caldac[10] set to 255
-relative binary: calibration source 0, range 4, ground referenced, calibration source 0, range 7, ground referenced
-caldac[9] set to 173
-relative binary: calibration source 1, range 0, ground referenced, calibration source 0, range 0, ground referenced
-caldac[8] set to 155
-binary: calibration source 0, range 0, ground referenced
-caldac[10] set to 129
-relative binary: calibration source 2, range 1, ground referenced, calibration source 0, range 1, ground referenced
-caldac[8] set to 0
-WARNING: caldac[8] pegged!
-binary: calibration source 0, range 1, ground referenced
-caldac[10] set to 127
-relative binary: calibration source 3, range 2, ground referenced, calibration source 0, range 2, ground referenced
-caldac[8] set to 51
-binary: calibration source 0, range 2, ground referenced
-caldac[10] set to 127
-relative binary: calibration source 4, range 3, ground referenced, calibration source 0, range 3, ground referenced
-caldac[8] set to 93
-binary: calibration source 0, range 3, ground referenced
-caldac[10] set to 127
-relative binary: calibration source 1, range 4, ground referenced, calibration source 0, range 4, ground referenced
-caldac[8] set to 155
-binary: calibration source 0, range 4, ground referenced
-caldac[10] set to 84
-relative binary: calibration source 2, range 5, ground referenced, calibration source 0, range 5, ground referenced
-caldac[8] set to 1
-binary: calibration source 0, range 5, ground referenced
-caldac[10] set to 219
-relative binary: calibration source 3, range 6, ground referenced, calibration source 0, range 6, ground referenced
-caldac[8] set to 0
-WARNING: caldac[8] pegged!
-binary: calibration source 0, range 6, ground referenced
-caldac[10] set to 173
-relative binary: calibration source 4, range 7, ground referenced, calibration source 0, range 7, ground referenced
-caldac[8] set to 0
-WARNING: caldac[8] pegged!
-binary: calibration source 0, range 7, ground referenced
-caldac[10] set to 151
-relative binary: DAC high calibration source, ch 0, range 0, DAC ground calibration source, ch 0, range 0
-caldac[1] set to 99
-binary: DAC ground calibration source, ch 0, range 0
-caldac[2] set to 115
-relative binary: DAC high calibration source, ch 0, range 0, DAC ground calibration source, ch 0, range 0
-caldac[0] set to 117
-binary: DAC ground calibration source, ch 0, range 0
-caldac[6] set to 133
-relative binary: DAC high calibration source, ch 0, range 1, DAC ground calibration source, ch 0, range 1
-caldac[1] set to 68
-binary: DAC ground calibration source, ch 0, range 1
-caldac[2] set to 103
-relative binary: DAC high calibration source, ch 0, range 1, DAC ground calibration source, ch 0, range 1
-caldac[0] set to 123
-binary: DAC ground calibration source, ch 0, range 1
-caldac[6] set to 127
-relative binary: DAC high calibration source, ch 0, range 2, DAC ground calibration source, ch 0, range 2
-caldac[1] set to 77
-binary: DAC ground calibration source, ch 0, range 2
-caldac[2] set to 129
-relative binary: DAC high calibration source, ch 0, range 2, DAC ground calibration source, ch 0, range 2
-caldac[0] set to 131
-binary: DAC ground calibration source, ch 0, range 2
-caldac[6] set to 131
-relative binary: DAC high calibration source, ch 0, range 3, DAC ground calibration source, ch 0, range 3
-caldac[1] set to 47
-binary: DAC ground calibration source, ch 0, range 3
-caldac[2] set to 131
-relative binary: DAC high calibration source, ch 0, range 3, DAC ground calibration source, ch 0, range 3
-caldac[0] set to 131
-binary: DAC ground calibration source, ch 0, range 3
-caldac[6] set to 128
-relative binary: DAC high calibration source, ch 1, range 0, DAC ground calibration source, ch 1, range 0
-caldac[5] set to 105
-binary: DAC ground calibration source, ch 1, range 0
-caldac[3] set to 126
-relative binary: DAC high calibration source, ch 1, range 0, DAC ground calibration source, ch 1, range 0
-caldac[4] set to 119
-binary: DAC ground calibration source, ch 1, range 0
-caldac[7] set to 127
-relative binary: DAC high calibration source, ch 1, range 1, DAC ground calibration source, ch 1, range 1
-caldac[5] set to 82
-binary: DAC ground calibration source, ch 1, range 1
-caldac[3] set to 121
-relative binary: DAC high calibration source, ch 1, range 1, DAC ground calibration source, ch 1, range 1
-caldac[4] set to 122
-binary: DAC ground calibration source, ch 1, range 1
-caldac[7] set to 123
-relative binary: DAC high calibration source, ch 1, range 2, DAC ground calibration source, ch 1, range 2
-caldac[5] set to 83
-binary: DAC ground calibration source, ch 1, range 2
-caldac[3] set to 131
-relative binary: DAC high calibration source, ch 1, range 2, DAC ground calibration source, ch 1, range 2
-caldac[4] set to 129
-binary: DAC ground calibration source, ch 1, range 2
-caldac[7] set to 134
-relative binary: DAC high calibration source, ch 1, range 3, DAC ground calibration source, ch 1, range 3
-caldac[5] set to 61
-binary: DAC ground calibration source, ch 1, range 3
-caldac[3] set to 132
-relative binary: DAC high calibration source, ch 1, range 3, DAC ground calibration source, ch 1, range 3
-caldac[4] set to 125
-binary: DAC ground calibration source, ch 1, range 3
-caldac[7] set to 130
-failed to open file /etc/comedi/calibrations/cb_pcidas_pci-das1602-16_comedi0 for writing
-calibration function returned error
diff --git a/comedi_calibrate/results/measurement-computing-pci-das6014 b/comedi_calibrate/results/measurement-computing-pci-das6014
deleted file mode 100644 (file)
index e0d33c4..0000000
+++ /dev/null
@@ -1,222 +0,0 @@
-linux:/home/matti/Envir_measure/cardsoft # /usr/local/bin/comedi_calibrate --calibrate /dev/comedi0
-Warning: device may not be not fully calibrated due to insufficient
-information.
-Please file a bug report at https://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing option: --verbose
-Forcing options: --reset --dump --calibrate --results
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp
-Driver name: cb_pcidas64
-Device name: pci-das6014
-Id: cb64.c,v 1.16 2004/08/02 01:35:41 fmhess Exp
-Comedi version: 0.7.70
-calibration source 0, range 0, ground referenced
-reading -4.4803(74)e-3, target 0
-caldac[4] gain=1.00119(96)e-4 V/bit S_min=1.29654 dof=14
-caldac[5] gain=4.474167(96)e-3 V/bit S_min=522.198 dof=14
-caldac[6] gain=5.203(96)e-6 V/bit S_min=1.53105 dof=14
-calibration source 1, range 0, ground referenced
-reading 9.9929764(76), target 9.9769
-caldac[4] gain=9.0214(79)e-5 V/bit S_min=25251.7 dof=14
-caldac[5] gain=2.464807(55)e-3 V/bit S_min=4.10294e+08 dof=14
-caldac[6] gain=-3.123038(47)e-3 V/bit S_min=1.2372e+09 dof=14
-caldac[7] gain=-1.13452(60)e-4 V/bit S_min=333506 dof=14
-calibration source 0, range 1, ground referenced
-reading -2.6261(34)e-3, target 0
-caldac[4] gain=6.0091(48)e-5 V/bit S_min=1.33021 dof=14
-caldac[5] gain=2.684554(48)e-3 V/bit S_min=848.033 dof=14
-caldac[6] gain=2.752(48)e-6 V/bit S_min=2.0863 dof=14
-calibration source 2, range 1, ground referenced
-reading 4.987903(13), target 4.96952
-caldac[4] gain=6.027(17)e-5 V/bit S_min=5.72009 dof=14
-caldac[5] gain=1.524538(93)e-3 V/bit S_min=5.07735e+07 dof=14
-caldac[6] gain=-1.609288(87)e-3 V/bit S_min=8.83594e+07 dof=14
-caldac[7] gain=-7.945(17)e-5 V/bit S_min=4.1996 dof=14
-calibration source 0, range 2, ground referenced
-reading -9.4484(58)e-4, target 0
-caldac[4] gain=2.38020(78)e-5 V/bit S_min=7.06088 dof=14
-caldac[5] gain=1.0639233(78)e-3 V/bit S_min=4943.81 dof=14
-caldac[6] gain=6.814(78)e-7 V/bit S_min=7.22209 dof=14
-calibration source 3, range 2, ground referenced
-reading 0.45980628(63), target 0.46308
-caldac[4] gain=2.38051(84)e-5 V/bit S_min=7.93803 dof=14
-caldac[5] gain=8.005529(58)e-4 V/bit S_min=1.4103e+09 dof=14
-caldac[6] gain=-3.261533(78)e-4 V/bit S_min=4.04224e+06 dof=14
-caldac[7] gain=-7.3309(83)e-6 V/bit S_min=3.47933 dof=14
-calibration source 0, range 3, ground referenced
-reading -9.283(18)e-5, target 0
-caldac[4] gain=2.3799(25)e-6 V/bit S_min=3.33165 dof=14
-caldac[5] gain=1.063931(25)e-4 V/bit S_min=498.68 dof=14
-caldac[6] gain=6.54(25)e-8 V/bit S_min=1.67646 dof=14
-calibration source 4, range 3, ground referenced
-reading 0.04781226(18), target 0.0483123
-caldac[4] gain=2.3816(25)e-6 V/bit S_min=1.65942 dof=14
-caldac[5] gain=7.01992(15)e-5 V/bit S_min=2.60349e+08 dof=14
-caldac[6] gain=-2.69269(17)e-5 V/bit S_min=1.23313e+07 dof=14
-caldac[7] gain=-7.612(24)e-7 V/bit S_min=1.24106 dof=14
-dac0 low, range 0, ground referenced
-reading -4.5083(76)e-3, target 0.00015259
-caldac[0] gain=1.04551(99)e-4 V/bit S_min=1.56957 dof=14
-caldac[4] gain=1.00175(98)e-4 V/bit S_min=1.12202 dof=14
-caldac[5] gain=4.474181(100)e-3 V/bit S_min=495.196 dof=14
-caldac[6] gain=5.22(10)e-6 V/bit S_min=1.14609 dof=14
-dac0 high, range 0, ground referenced
-reading 9.0146385(83), target 8.99992
-caldac[0] gain=1.4571(11)e-4 V/bit S_min=22.5438 dof=14
-caldac[1] gain=-9.739(11)e-5 V/bit S_min=17.4398 dof=14
-caldac[4] gain=1.0018(11)e-4 V/bit S_min=32.1092 dof=14
-caldac[5] gain=4.47627(11)e-3 V/bit S_min=578.718 dof=14
-caldac[6] gain=-6.54983(11)e-3 V/bit S_min=7.84674e+06 dof=14
-caldac[7] gain=-1.4357(11)e-4 V/bit S_min=12.1425 dof=14
-dac1 low, range 0, ground referenced
-reading -4.6033(76)e-3, target 0.00015259
-caldac[2] gain=1.04604(100)e-4 V/bit S_min=1.07481 dof=14
-caldac[4] gain=1.00146(98)e-4 V/bit S_min=2.02347 dof=14
-caldac[5] gain=4.474175(99)e-3 V/bit S_min=490.304 dof=14
-caldac[6] gain=5.259(100)e-6 V/bit S_min=1.51898 dof=14
-dac1 high, range 0, ground referenced
-reading 9.0146439(83), target 8.99992
-caldac[2] gain=1.4593(11)e-4 V/bit S_min=26.1243 dof=14
-caldac[3] gain=-9.752(11)e-5 V/bit S_min=20.0498 dof=14
-caldac[4] gain=1.0016(11)e-4 V/bit S_min=31.8804 dof=14
-caldac[5] gain=4.47621(11)e-3 V/bit S_min=591.839 dof=14
-caldac[6] gain=-6.54985(11)e-3 V/bit S_min=7.81219e+06 dof=14
-caldac[7] gain=-1.4356(11)e-4 V/bit S_min=12.8266 dof=14
-relative binary: calibration source 1, range 0, ground referenced,
-calibration source 0, range 0, ground referenced
-caldac[6] set to 129
-binary: calibration source 0, range 0, ground referenced
-caldac[5] set to 128
-relative binary: calibration source 1, range 0, ground referenced,
-calibration source 0, range 0, ground referenced
-caldac[7] set to 169
-binary: calibration source 0, range 0, ground referenced
-caldac[4] set to 133
-relative binary: calibration source 2, range 1, ground referenced,
-calibration source 0, range 1, ground referenced
-caldac[6] set to 133
-binary: calibration source 0, range 1, ground referenced
-caldac[5] set to 128
-relative binary: calibration source 2, range 1, ground referenced,
-calibration source 0, range 1, ground referenced
-caldac[7] set to 125
-binary: calibration source 0, range 1, ground referenced
-caldac[4] set to 132
-relative binary: calibration source 3, range 2, ground referenced,
-calibration source 0, range 2, ground referenced
-caldac[6] set to 119
-binary: calibration source 0, range 2, ground referenced
-caldac[5] set to 128
-relative binary: calibration source 3, range 2, ground referenced,
-calibration source 0, range 2, ground referenced
-caldac[7] set to 169
-binary: calibration source 0, range 2, ground referenced
-caldac[4] set to 129
-relative binary: calibration source 4, range 3, ground referenced,
-calibration source 0, range 3, ground referenced
-caldac[6] set to 115
-binary: calibration source 0, range 3, ground referenced
-caldac[5] set to 128
-relative binary: calibration source 4, range 3, ground referenced,
-calibration source 0, range 3, ground referenced
-caldac[7] set to 134
-binary: calibration source 0, range 3, ground referenced
-caldac[4] set to 127
-relative binary: dac0 high, range 0, ground referenced, dac0 low, range 0,
-ground referenced
-caldac[1] set to 137
-binary: dac0 low, range 0, ground referenced
-caldac[0] set to 129
-relative binary: dac1 high, range 0, ground referenced, dac1 low, range 0,
-ground referenced
-caldac[3] set to 139
-binary: dac1 low, range 0, ground referenced
-caldac[2] set to 129
-writing calibration to
-/usr/local/var/lib/comedi/calibrations/cb_pcidas64_pci-das6014_comedi0
-calibration source 0, range 0, ground referenced
-applied calibration for subdev 0, channel 0, range 0, aref 0
-reading -0.3(64)e-6, target 0
-caldac[4] gain=9.9925(96)e-5 V/bit S_min=3.07829 dof=14
-caldac[5] gain=4.464724(96)e-3 V/bit S_min=529.258 dof=14
-caldac[6] gain=2.252(97)e-6 V/bit S_min=5.88681 dof=14
-calibration source 1, range 0, ground referenced
-applied calibration for subdev 0, channel 0, range 0, aref 0
-reading 9.9772253(77), target 9.9769
-caldac[4] gain=1.00300(98)e-4 V/bit S_min=57.1959 dof=14
-caldac[5] gain=2.576274(55)e-3 V/bit S_min=3.96155e+08 dof=14
-caldac[6] gain=-3.136499(49)e-3 V/bit S_min=1.13867e+09 dof=14
-calibration source 0, range 1, ground referenced
-applied calibration for subdev 0, channel 0, range 1, aref 0
-reading -1.83(31)e-5, target 0
-caldac[4] gain=5.9853(48)e-5 V/bit S_min=1.49887 dof=14
-caldac[5] gain=2.672925(47)e-3 V/bit S_min=845.337 dof=14
-caldac[6] gain=1.119(48)e-6 V/bit S_min=5.13381 dof=14
-calibration source 2, range 1, ground referenced
-applied calibration for subdev 0, channel 0, range 1, aref 0
-reading 4.969619(14), target 4.96952
-caldac[4] gain=6.009(17)e-5 V/bit S_min=11.6169 dof=14
-caldac[5] gain=1.638934(91)e-3 V/bit S_min=4.96815e+07 dof=14
-caldac[6] gain=-1.595607(87)e-3 V/bit S_min=9.00592e+07 dof=14
-calibration source 0, range 2, ground referenced
-applied calibration for subdev 0, channel 0, range 2, aref 0
-reading 1.031(52)e-5, target 0
-caldac[4] gain=2.39333(78)e-5 V/bit S_min=4.67894 dof=14
-caldac[5] gain=1.0691025(78)e-3 V/bit S_min=5111.18 dof=14
-calibration source 3, range 2, ground referenced
-applied calibration for subdev 0, channel 0, range 2, aref 0
-reading 0.46310376(62), target 0.46308
-caldac[4] gain=2.39231(84)e-5 V/bit S_min=14.305 dof=14
-caldac[5] gain=7.916264(58)e-4 V/bit S_min=1.47745e+09 dof=14
-caldac[6] gain=-3.253145(73)e-4 V/bit S_min=5.20338e+06 dof=14
-caldac[7] gain=-7.4734(84)e-6 V/bit S_min=3.11628 dof=14
-calibration source 0, range 3, ground referenced
-applied calibration for subdev 0, channel 0, range 3, aref 0
-reading -1.66(17)e-6, target 0
-caldac[4] gain=2.3995(25)e-6 V/bit S_min=1.21466 dof=14
-caldac[5] gain=1.072828(25)e-4 V/bit S_min=502.692 dof=14
-calibration source 4, range 3, ground referenced
-applied calibration for subdev 0, channel 0, range 3, aref 0
-reading 0.04831059(18), target 0.0483123
-caldac[4] gain=2.4003(25)e-6 V/bit S_min=4.88799 dof=14
-caldac[5] gain=6.84265(14)e-5 V/bit S_min=3.38442e+08 dof=14
-caldac[6] gain=-2.65240(16)e-5 V/bit S_min=1.33023e+07 dof=14
-caldac[7] gain=-7.764(25)e-7 V/bit S_min=1.75163 dof=14
-dac0 low, range 0, ground referenced
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 0, range 0, aref 0
-reading 1.645(58)e-4, target 0.00015259
-caldac[0] gain=1.04294(99)e-4 V/bit S_min=3.41793 dof=14
-caldac[4] gain=9.9964(99)e-5 V/bit S_min=1.55293 dof=14
-caldac[5] gain=4.464654(99)e-3 V/bit S_min=506.679 dof=14
-caldac[6] gain=2.209(99)e-6 V/bit S_min=5.04124 dof=14
-dac0 high, range 0, ground referenced
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 0, range 0, aref 0
-reading 9.0001302(80), target 8.99992
-caldac[0] gain=1.4551(11)e-4 V/bit S_min=16.0483 dof=14
-caldac[1] gain=-9.733(11)e-5 V/bit S_min=13.3661 dof=14
-caldac[4] gain=1.0022(11)e-4 V/bit S_min=41.6717 dof=14
-caldac[5] gain=4.46663(11)e-3 V/bit S_min=675.5 dof=14
-caldac[6] gain=-6.54380(11)e-3 V/bit S_min=7.53188e+06 dof=14
-caldac[7] gain=-1.4611(11)e-4 V/bit S_min=12.3093 dof=14
-dac1 low, range 0, ground referenced
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 0, range 0, aref 0
-reading 8.58(59)e-5, target 0.00015259
-caldac[2] gain=1.04337(99)e-4 V/bit S_min=3.61001 dof=14
-caldac[4] gain=9.9894(99)e-5 V/bit S_min=3.03987 dof=14
-caldac[5] gain=4.464630(99)e-3 V/bit S_min=490.707 dof=14
-caldac[6] gain=2.30(10)e-6 V/bit S_min=4.14847 dof=14
-dac1 high, range 0, ground referenced
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 0, range 0, aref 0
-reading 8.9999419(80), target 8.99992
-caldac[2] gain=1.4567(11)e-4 V/bit S_min=18.0408 dof=14
-caldac[3] gain=-9.741(11)e-5 V/bit S_min=12.151 dof=14
-caldac[4] gain=1.0018(11)e-4 V/bit S_min=40.5374 dof=14
-caldac[5] gain=4.46669(11)e-3 V/bit S_min=675.897 dof=14
-caldac[6] gain=-6.54384(11)e-3 V/bit S_min=7.52359e+06 dof=14
-caldac[7] gain=-1.4606(11)e-4 V/bit S_min=11.1326 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/measurement-computing-pci-das6025 b/comedi_calibrate/results/measurement-computing-pci-das6025
deleted file mode 100644 (file)
index c3cf2b4..0000000
+++ /dev/null
@@ -1,110 +0,0 @@
-eeprom ch 0x30 gives calibration source of 9.9777V
-eeprom ch 0x32 gives calibration source of 4.97028V
-eeprom ch 0x38 gives calibration source of 0.463091V
-eeprom ch 0x3e gives calibration source of 0.0485681V
-Id: comedi_calibrate.c,v 1.64 2003/05/01 14:43:50 fmhess Exp
-Driver name: cb_pcidas64
-Device name: pci-das6025
-Id: cb64.c,v 1.7 2003/04/30 20:30:04 fmhess Exp
-Comedi version: 0.7.66
-calibration source 0, range 0, ground referenced
-failed to apply calibration for subdev 0, channel 0, range 0, aref 0
-reading -8.28(30)e-3, target 0
-caldac[4] gain=9.8517(22)e-4 V/bit S_min=2421.13 dof=254
-caldac[5] gain=2.76621(22)e-3 V/bit S_min=3098.28 dof=254
-caldac[6] gain=8.81(23)e-6 V/bit S_min=249.499 dof=254
-caldac[7] gain=3.44(23)e-6 V/bit S_min=268.394 dof=254
-calibration source 1, range 0, ground referenced
-failed to apply calibration for subdev 0, channel 0, range 0, aref 0
-reading nan, target 9.9777
-caldac[4] gain=1.00621(69)e-3 V/bit S_min=138.687 dof=119
-caldac[5] gain=2.78213(66)e-3 V/bit S_min=555.324 dof=123
-caldac[6] gain=-6.52450(63)e-3 V/bit S_min=50891.5 dof=125
-caldac[7] gain=-2.48300(64)e-3 V/bit S_min=2471.53 dof=123
-calibration source 0, range 1, ground referenced
-failed to apply calibration for subdev 0, channel 0, range 1, aref 0
-reading -4.12(15)e-3, target 0
-caldac[4] gain=5.9318(11)e-4 V/bit S_min=2742.78 dof=254
-caldac[5] gain=1.65956(11)e-3 V/bit S_min=3163.35 dof=254
-caldac[6] gain=5.21(12)e-6 V/bit S_min=231.738 dof=254
-caldac[7] gain=1.97(12)e-6 V/bit S_min=246.474 dof=254
-calibration source 2, range 1, ground referenced
-failed to apply calibration for subdev 0, channel 0, range 1, aref 0
-reading 4.99260(19), target 4.97028
-caldac[4] gain=6.0366(46)e-4 V/bit S_min=90.6616 dof=129
-caldac[5] gain=1.66880(47)e-3 V/bit S_min=325.091 dof=127
-caldac[6] gain=-3.26198(41)e-3 V/bit S_min=30321.5 dof=127
-caldac[7] gain=-1.23988(44)e-3 V/bit S_min=1572.93 dof=128
-calibration source 0, range 2, ground referenced
-failed to apply calibration for subdev 0, channel 0, range 2, aref 0
-reading -1.707(13)e-3, target 0
-caldac[4] gain=2.38478(11)e-4 V/bit S_min=2424.22 dof=254
-caldac[5] gain=6.63634(11)e-4 V/bit S_min=8135.26 dof=254
-caldac[6] gain=1.338(12)e-6 V/bit S_min=327.293 dof=254
-caldac[7] gain=4.68(11)e-7 V/bit S_min=258.722 dof=254
-calibration source 3, range 2, ground referenced
-failed to apply calibration for subdev 0, channel 0, range 2, aref 0
-reading 0.462994(18), target 0.463091
-caldac[4] gain=2.38853(13)e-4 V/bit S_min=1712.28 dof=254
-caldac[5] gain=6.63761(21)e-4 V/bit S_min=4336.28 dof=181
-caldac[6] gain=-3.24320(14)e-4 V/bit S_min=991382 dof=229
-caldac[7] gain=-1.18641(12)e-4 V/bit S_min=30983.8 dof=254
-calibration source 0, range 3, ground referenced
-failed to apply calibration for subdev 0, channel 0, range 3, aref 0
-reading -5.17(16)e-5, target 0
-caldac[1] gain=1.00(13)e-8 V/bit S_min=646.774 dof=254
-caldac[2] gain=-5.6(13)e-9 V/bit S_min=491.365 dof=254
-caldac[3] gain=5.4(13)e-9 V/bit S_min=537.052 dof=254
-caldac[4] gain=2.38560(13)e-5 V/bit S_min=2286.72 dof=254
-caldac[5] gain=6.63556(13)e-5 V/bit S_min=6145.89 dof=254
-caldac[6] gain=6.15(13)e-8 V/bit S_min=612.86 dof=254
-calibration source 4, range 3, ground referenced
-failed to apply calibration for subdev 0, channel 0, range 3, aref 0
-reading 0.0485419(20), target 0.0485681
-caldac[0] gain=-5.5(13)e-9 V/bit S_min=533.801 dof=254
-caldac[1] gain=-1.32(13)e-8 V/bit S_min=730.851 dof=254
-caldac[2] gain=-1.40(13)e-8 V/bit S_min=459.123 dof=254
-caldac[3] gain=-1.80(13)e-8 V/bit S_min=432.132 dof=254
-caldac[4] gain=2.39321(21)e-5 V/bit S_min=1136.91 dof=184
-caldac[5] gain=6.63941(29)e-5 V/bit S_min=3831.79 dof=147
-caldac[6] gain=-3.24996(24)e-5 V/bit S_min=154970 dof=166
-caldac[7] gain=-1.23781(14)e-5 V/bit S_min=17985.1 dof=236
-dac0 low, range 0, ground referenced
-failed to apply calibration for subdev 1, channel 0, range 0, aref 0
-failed to apply calibration for subdev 0, channel 0, range 0, aref 0
-reading -0.01996(24), target 0.002442
-caldac[0] gain=2.22557(22)e-3 V/bit S_min=2531.06 dof=254
-caldac[4] gain=9.8681(22)e-4 V/bit S_min=2614.4 dof=254
-caldac[5] gain=2.76647(22)e-3 V/bit S_min=2818.05 dof=254
-caldac[6] gain=1.665(22)e-5 V/bit S_min=289.052 dof=254
-caldac[7] gain=5.68(22)e-6 V/bit S_min=236.398 dof=254
-dac0 high, range 0, ground referenced
-failed to apply calibration for subdev 1, channel 0, range 0, aref 0
-failed to apply calibration for subdev 0, channel 0, range 0, aref 0
-reading 8.97734(25), target 8.99878
-caldac[0] gain=2.22584(23)e-3 V/bit S_min=2618.77 dof=254
-caldac[1] gain=7.7667(23)e-4 V/bit S_min=331.603 dof=254
-caldac[4] gain=1.00107(23)e-3 V/bit S_min=747.153 dof=254
-caldac[5] gain=2.76715(23)e-3 V/bit S_min=2526.4 dof=254
-caldac[6] gain=-6.40118(23)e-3 V/bit S_min=1.79872e+06 dof=254
-caldac[7] gain=-2.29151(23)e-3 V/bit S_min=40138.8 dof=254
-dac1 low, range 0, ground referenced
-failed to apply calibration for subdev 1, channel 1, range 0, aref 0
-failed to apply calibration for subdev 0, channel 0, range 0, aref 0
-reading -4.08(24)e-3, target 0.002442
-caldac[2] gain=2.22185(22)e-3 V/bit S_min=3310.56 dof=254
-caldac[3] gain=-1.00(21)e-6 V/bit S_min=245.279 dof=254
-caldac[4] gain=9.8518(22)e-4 V/bit S_min=2424.67 dof=254
-caldac[5] gain=2.76653(22)e-3 V/bit S_min=3054.6 dof=254
-caldac[6] gain=6.51(21)e-6 V/bit S_min=256.31 dof=254
-caldac[7] gain=2.48(21)e-6 V/bit S_min=253.103 dof=254
-dac1 high, range 0, ground referenced
-failed to apply calibration for subdev 1, channel 1, range 0, aref 0
-failed to apply calibration for subdev 0, channel 0, range 0, aref 0
-reading 8.99382(28), target 8.99878
-caldac[2] gain=2.22274(22)e-3 V/bit S_min=2327.69 dof=254
-caldac[3] gain=7.7525(23)e-4 V/bit S_min=344.764 dof=254
-caldac[4] gain=9.9918(23)e-4 V/bit S_min=1062.15 dof=254
-caldac[5] gain=2.76787(23)e-3 V/bit S_min=2693.25 dof=254
-caldac[6] gain=-6.41290(23)e-3 V/bit S_min=1.79855e+06 dof=254
-caldac[7] gain=-2.29682(23)e-3 V/bit S_min=40074 dof=254
diff --git a/comedi_calibrate/results/measurement-computing-pci-das6034 b/comedi_calibrate/results/measurement-computing-pci-das6034
deleted file mode 100644 (file)
index fe3164e..0000000
+++ /dev/null
@@ -1,136 +0,0 @@
-Warning: device may not be not fully calibrated due to insufficient information.
-Please file a bug report at https://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing option: --verbose
-Forcing options: --reset --dump --calibrate --results
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp 
-Driver name: cb_pcidas64
-Device name: pci-das6034
-Id: cb64.c,v 1.18 2005/02/22 13:00:07 fmhess Exp 
-Comedi version: 0.7.69
-calibration source 0, range 0, ground referenced
-reading -2.6629(72)e-3, target 0
-caldac[4] gain=1.00642(95)e-4 V/bit S_min=82.1553 dof=14
-caldac[5] gain=4.366282(96)e-3 V/bit S_min=3302.4 dof=14
-caldac[6] gain=3.578(97)e-6 V/bit S_min=2.19792 dof=14
-calibration source 1, range 0, ground referenced
-reading 9.9777790(72), target 9.97425
-caldac[4] gain=9.9508(97)e-5 V/bit S_min=38.436 dof=14
-caldac[5] gain=4.36817(18)e-3 V/bit S_min=4732.76 dof=7
-caldac[6] gain=-6.47312(19)e-3 V/bit S_min=558389 dof=6
-caldac[7] gain=-1.58597(97)e-4 V/bit S_min=15.2113 dof=14
-calibration source 0, range 1, ground referenced
-reading -1.7137(34)e-3, target 0
-caldac[4] gain=6.0189(47)e-5 V/bit S_min=106.175 dof=14
-caldac[5] gain=2.619492(48)e-3 V/bit S_min=3939.51 dof=14
-caldac[6] gain=1.924(49)e-6 V/bit S_min=1.26219 dof=14
-calibration source 2, range 1, ground referenced
-reading 4.9780777(36), target 4.96851
-caldac[4] gain=5.9669(48)e-5 V/bit S_min=45.7913 dof=14
-caldac[5] gain=2.621085(85)e-3 V/bit S_min=6807.77 dof=7
-caldac[6] gain=-3.229515(94)e-3 V/bit S_min=567252 dof=6
-caldac[7] gain=-7.9244(48)e-5 V/bit S_min=16.5792 dof=14
-calibration source 0, range 2, ground referenced
-reading -8.7301(57)e-4, target 0
-caldac[4] gain=2.36935(79)e-5 V/bit S_min=47.3394 dof=14
-caldac[5] gain=1.0379010(79)e-3 V/bit S_min=26776.1 dof=14
-caldac[6] gain=5.942(79)e-7 V/bit S_min=9.19615 dof=14
-calibration source 3, range 2, ground referenced
-reading 0.46077600(58), target 0.46496
-caldac[4] gain=2.36555(79)e-5 V/bit S_min=14.0434 dof=14
-caldac[5] gain=1.037596(12)e-3 V/bit S_min=35710.1 dof=9
-caldac[6] gain=-3.232700(85)e-4 V/bit S_min=2.6715e+06 dof=13
-caldac[7] gain=-7.3574(78)e-6 V/bit S_min=23.3645 dof=14
-calibration source 0, range 3, ground referenced
-reading -1.0640(19)e-4, target 0
-caldac[4] gain=2.3668(26)e-6 V/bit S_min=9.19981 dof=14
-caldac[5] gain=1.037799(26)e-4 V/bit S_min=2434.15 dof=14
-caldac[6] gain=6.94(26)e-8 V/bit S_min=8.30868 dof=14
-calibration source 4, range 3, ground referenced
-reading 0.04799069(19), target 0.0485985
-caldac[4] gain=2.3611(26)e-6 V/bit S_min=8.72784 dof=14
-caldac[5] gain=1.037657(41)e-4 V/bit S_min=3347.58 dof=8
-caldac[6] gain=-3.21374(37)e-5 V/bit S_min=65354 dof=9
-caldac[7] gain=-7.719(26)e-7 V/bit S_min=12.5684 dof=14
-relative binary: calibration source 1, range 0, ground referenced, calibration source 0, range 0, ground referenced
-caldac[6] set to 128
-binary: calibration source 0, range 0, ground referenced
-caldac[5] set to 127
-relative binary: calibration source 1, range 0, ground referenced, calibration source 0, range 0, ground referenced
-caldac[7] set to 137
-binary: calibration source 0, range 0, ground referenced
-caldac[4] set to 153
-relative binary: calibration source 2, range 1, ground referenced, calibration source 0, range 1, ground referenced
-caldac[6] set to 131
-binary: calibration source 0, range 1, ground referenced
-caldac[5] set to 128
-relative binary: calibration source 2, range 1, ground referenced, calibration source 0, range 1, ground referenced
-caldac[7] set to 105
-binary: calibration source 0, range 1, ground referenced
-caldac[4] set to 129
-relative binary: calibration source 3, range 2, ground referenced, calibration source 0, range 2, ground referenced
-caldac[6] set to 117
-binary: calibration source 0, range 2, ground referenced
-caldac[5] set to 128
-relative binary: calibration source 3, range 2, ground referenced, calibration source 0, range 2, ground referenced
-caldac[7] set to 113
-binary: calibration source 0, range 2, ground referenced
-caldac[4] set to 137
-relative binary: calibration source 4, range 3, ground referenced, calibration source 0, range 3, ground referenced
-caldac[6] set to 112
-binary: calibration source 0, range 3, ground referenced
-caldac[5] set to 128
-relative binary: calibration source 4, range 3, ground referenced, calibration source 0, range 3, ground referenced
-caldac[7] set to 139
-binary: calibration source 0, range 3, ground referenced
-caldac[4] set to 145
-writing calibration to /usr/local/var/lib/comedi/calibrations/cb_pcidas64_pci-das6034_comedi0
-calibration source 0, range 0, ground referenced
-applied calibration for subdev 0, channel 0, range 0, aref 0
-reading -1.615(74)e-4, target 0
-caldac[4] gain=1.00543(96)e-4 V/bit S_min=82.7998 dof=14
-caldac[5] gain=4.362993(94)e-3 V/bit S_min=3138.62 dof=14
-calibration source 1, range 0, ground referenced
-applied calibration for subdev 0, channel 0, range 0, aref 0
-reading 9.9742647(73), target 9.97425
-caldac[4] gain=9.9402(98)e-5 V/bit S_min=50.4821 dof=14
-caldac[5] gain=2.520398(55)e-3 V/bit S_min=3.8095e+08 dof=14
-caldac[6] gain=-3.120775(47)e-3 V/bit S_min=1.188e+09 dof=14
-calibration source 0, range 1, ground referenced
-applied calibration for subdev 0, channel 0, range 1, aref 0
-reading 4.80(40)e-5, target 0
-caldac[4] gain=6.0196(48)e-5 V/bit S_min=66.9283 dof=14
-caldac[5] gain=2.612802(47)e-3 V/bit S_min=3349.73 dof=14
-calibration source 2, range 1, ground referenced
-applied calibration for subdev 0, channel 0, range 1, aref 0
-reading 4.9686469(36), target 4.96851
-caldac[4] gain=5.9746(48)e-5 V/bit S_min=191.699 dof=14
-caldac[5] gain=1.602438(27)e-3 V/bit S_min=5.42537e+08 dof=14
-caldac[6] gain=-1.605090(23)e-3 V/bit S_min=1.18824e+09 dof=14
-calibration source 0, range 2, ground referenced
-applied calibration for subdev 0, channel 0, range 2, aref 0
-reading 1.85(64)e-6, target 0
-caldac[4] gain=2.38721(79)e-5 V/bit S_min=23.3049 dof=14
-caldac[5] gain=1.0450271(79)e-3 V/bit S_min=25711.9 dof=14
-caldac[6] gain=-1.648(79)e-7 V/bit S_min=4.85014 dof=14
-calibration source 3, range 2, ground referenced
-applied calibration for subdev 0, channel 0, range 2, aref 0
-reading 0.46500106(57), target 0.46496
-caldac[4] gain=2.38565(79)e-5 V/bit S_min=37.8663 dof=14
-caldac[5] gain=7.666480(55)e-4 V/bit S_min=1.64902e+09 dof=14
-caldac[6] gain=-3.172386(69)e-4 V/bit S_min=5.73333e+06 dof=14
-caldac[7] gain=-7.4892(80)e-6 V/bit S_min=9.71171 dof=14
-calibration source 0, range 3, ground referenced
-applied calibration for subdev 0, channel 0, range 3, aref 0
-reading 4.4(19)e-7, target 0
-caldac[4] gain=2.3904(26)e-6 V/bit S_min=8.99778 dof=14
-caldac[5] gain=1.048344(26)e-4 V/bit S_min=2416.64 dof=14
-calibration source 4, range 3, ground referenced
-applied calibration for subdev 0, channel 0, range 3, aref 0
-reading 0.04859764(19), target 0.0485985
-caldac[4] gain=2.3845(26)e-6 V/bit S_min=4.39775 dof=14
-caldac[5] gain=6.53838(15)e-5 V/bit S_min=2.94241e+08 dof=14
-caldac[6] gain=-2.52854(17)e-5 V/bit S_min=1.26594e+07 dof=14
-caldac[7] gain=-7.863(26)e-7 V/bit S_min=7.03811 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/pci-6014 b/comedi_calibrate/results/pci-6014
deleted file mode 100644 (file)
index fa0a9d0..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-mbdyn-rt:/home/sechi/comedilib/comedi_calibrate # ./comedi_calibrate 
-WARNING: unknown eeprom address for reference voltage
-correction.  This might be fixable if you send us an eeprom dump
-(see the demo/eeprom_dump program).
-Warning: device may not be not fully calibrated due to insufficient information.
-Please file a bug report at https://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing option: --verbose
-Forcing options: --reset --dump --no-calibrate --no-results
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp 
-Driver name: ni_pcimio
-Device name: pci-6014
-Id: ni.c,v 1.115 2004/05/22 01:08:48 fmhess Exp 
-Comedi version: 0.7.68
-ai, bipolar zero offset, low gain
-reading 0.017656(16), target 0
-caldac[0] gain=-5.768(11)e-5 V/bit S_min=10.3056 dof=14
-caldac[2] gain=-3.13(11)e-6 V/bit S_min=0.921059 dof=14
-caldac[4] gain=-6.2683(11)e-4 V/bit S_min=55.8791 dof=14
-caldac[8] gain=-1.01(11)e-6 V/bit S_min=1.45739 dof=14
-ai, bipolar zero offset, high gain
-reading 8.7501(28)e-4, target 0
-caldac[0] gain=-5.67757(39)e-5 V/bit S_min=140.21 dof=14
-caldac[2] gain=4.43(39)e-8 V/bit S_min=6.16357 dof=14
-caldac[4] gain=-3.1322(39)e-6 V/bit S_min=2.45954 dof=14
-caldac[8] gain=-9.759(39)e-7 V/bit S_min=1.34279 dof=14
-ai, bipolar voltage reference, low gain
-reading 5.0101744(75), target 5
-caldac[0] gain=-5.699(11)e-5 V/bit S_min=20.6668 dof=14
-caldac[2] gain=3.5617(11)e-4 V/bit S_min=192.542 dof=14
-caldac[4] gain=-6.2683(11)e-4 V/bit S_min=36.8218 dof=14
-caldac[8] gain=-8.7(10)e-7 V/bit S_min=0.91184 dof=14
-ao 0, zero offset, low gain
-reading 6.452(87)e-4, target 0.00015259
-caldac[0] gain=-5.759(12)e-5 V/bit S_min=23.5811 dof=14
-caldac[2] gain=-4.34(12)e-6 V/bit S_min=1.48953 dof=14
-caldac[4] gain=-6.2662(12)e-4 V/bit S_min=55.6746 dof=14
-caldac[6] gain=-1.04453(12)e-3 V/bit S_min=116.539 dof=14
-caldac[8] gain=-9.5(12)e-7 V/bit S_min=0.835527 dof=14
-caldac[10] gain=-1.0048(12)e-4 V/bit S_min=10.8132 dof=14
-ao 0, reference voltage, low gain
-reading 7.9836195(94), target 8.00015
-caldac[0] gain=-5.799(12)e-5 V/bit S_min=16.1238 dof=14
-caldac[2] gain=5.7015(12)e-4 V/bit S_min=334.607 dof=14
-caldac[4] gain=-6.2677(12)e-4 V/bit S_min=46.0133 dof=14
-caldac[6] gain=-1.04468(12)e-3 V/bit S_min=109.296 dof=14
-caldac[7] gain=-1.56748(12)e-3 V/bit S_min=72.6876 dof=14
-caldac[8] gain=-8.5(11)e-7 V/bit S_min=2.03799 dof=14
-caldac[10] gain=-1.0072(12)e-4 V/bit S_min=10.5832 dof=14
-caldac[11] gain=-1.2026(12)e-4 V/bit S_min=7.25575 dof=14
-ao 0, linearity (mid), low gain
-reading 3.9921535(80), target 4.00015
-caldac[0] gain=-5.796(12)e-5 V/bit S_min=22.5702 dof=14
-caldac[2] gain=2.8288(12)e-4 V/bit S_min=107.619 dof=14
-caldac[3] gain=-4.7(11)e-7 V/bit S_min=1.37003 dof=14
-caldac[4] gain=-6.2670(12)e-4 V/bit S_min=34.8243 dof=14
-caldac[6] gain=-1.04468(12)e-3 V/bit S_min=100.675 dof=14
-caldac[7] gain=-7.8375(12)e-4 V/bit S_min=22.6948 dof=14
-caldac[8] gain=-10.0(11)e-7 V/bit S_min=0.986251 dof=14
-caldac[10] gain=-1.0071(12)e-4 V/bit S_min=15.8146 dof=14
-caldac[11] gain=-6.028(12)e-5 V/bit S_min=5.13472 dof=14
-ao 1, zero offset, low gain
-reading 2.7344(80)e-3, target 0.00015259
-caldac[0] gain=-5.752(12)e-5 V/bit S_min=22.8584 dof=14
-caldac[1] gain=-1.0003(12)e-4 V/bit S_min=10.4798 dof=14
-caldac[2] gain=-4.04(12)e-6 V/bit S_min=0.465639 dof=14
-caldac[3] gain=-7.9(11)e-7 V/bit S_min=0.907061 dof=14
-caldac[4] gain=-6.2674(12)e-4 V/bit S_min=51.6414 dof=14
-caldac[8] gain=-9.3(11)e-7 V/bit S_min=0.920044 dof=14
-caldac[9] gain=-1.04284(12)e-3 V/bit S_min=135.769 dof=14
-ao 1, reference voltage, low gain
-reading 7.9737756(95), target 8.00015
-caldac[0] gain=-5.769(12)e-5 V/bit S_min=32.723 dof=14
-caldac[1] gain=-1.0020(12)e-4 V/bit S_min=16.6388 dof=14
-caldac[2] gain=5.6944(12)e-4 V/bit S_min=342.563 dof=14
-caldac[3] gain=-1.56801(12)e-3 V/bit S_min=298.429 dof=14
-caldac[4] gain=-6.2670(12)e-4 V/bit S_min=22.2871 dof=14
-caldac[5] gain=-1.2067(12)e-4 V/bit S_min=4.72096 dof=14
-caldac[8] gain=-9.6(12)e-7 V/bit S_min=1.49009 dof=14
-caldac[9] gain=-1.04266(12)e-3 V/bit S_min=125.881 dof=14
-ao 1, linearity (mid), low gain
-reading 3.9882860(82), target 4.00015
-caldac[0] gain=-5.768(12)e-5 V/bit S_min=32.4881 dof=14
-caldac[1] gain=-1.0019(12)e-4 V/bit S_min=9.26381 dof=14
-caldac[2] gain=2.8245(12)e-4 V/bit S_min=78.7483 dof=14
-caldac[3] gain=-7.8421(12)e-4 V/bit S_min=80.6435 dof=14
-caldac[4] gain=-6.2676(12)e-4 V/bit S_min=54.1094 dof=14
-caldac[5] gain=-6.025(12)e-5 V/bit S_min=4.15581 dof=14
-caldac[8] gain=-9.2(11)e-7 V/bit S_min=1.56265 dof=14
-caldac[9] gain=-1.04275(12)e-3 V/bit S_min=139.837 dof=14
-Failed to apply calibration for subdevice 0, channel 0, range 0, aref 0
-
-
-
-
-mbdyn-rt:/home/sechi/comedilib/demo # ./eeprom_dump 
-0000: ffffffffffffffffffffffffffffffff  ................
-0010: ffffffffffffffffffffffffffffffff  ................
-0020: ffffffffffffffffffffffffffffffff  ................
-0030: ffffffffffffffffffffffffffffffff  ................
-0040: ffffffffffffffffffffffffffffffff  ................
-0050: ffffffffffffffffffffffffffffffff  ................
-0060: ffffffffffffffffffffffffffffffff  ................
-0070: ffffffffffffffffffffffffffffffff  ................
-0080: ffffffffffffffffffffffffffffffff  ................
-0090: ffffffffffffffffffffffffffffffff  ................
-00a0: ffffffffffffffffffffffffffffffff  ................
-00b0: ffffffffffffffffffffffffffffffff  ................
-00c0: ffffffffffffffffffffffffffff0000  ................
-00d0: 000000000000000000000000e239bdbc  .............9..
-00e0: 000000000000e239bdbc000000000049  .......9.......I
-00f0: 00540041004e0000000000000049004e  .T.A.N.......I.N
-0100: 30144ea0a44d10003d2e033ca01b380c  0.N..M..=..<..8.
-0110: 000c0000000000000000000000000000  ................
-0120: 00000000000000000000000000000000  ................
-0130: 00000000000000000000000000000000  ................
-0140: 00000000000000000000000000000000  ................
-0150: 00000000000000000000000000000000  ................
-0160: 000000000000747c71847c6f807e998b  ......t|q.|o.~..
-0170: 8c935f00000000000000a601aa01ac01  .._.............
-0180: 00000000000000000000000000000000  ................
-0190: 00000000000000000000000000000074  ...............t
-01a0: 7c71847c6f807e998b8c935f00624161  |q.|o.~...._.bAa
-01b0: 416161ad456541026542026742020c03  Aaa.EeA.eB.gB...
-01c0: 0e0309010a0b08090601070b05090201  ................
-01d0: 01080b000403ff000000012511010608  ...........%....
-01e0: 0808040101000c010804105001001002  ...........P....
-01f0: 011001100a000a0bdf010405d407036f  ...............o
-
-
diff --git a/comedi_calibrate/results/pci-6023e b/comedi_calibrate/results/pci-6023e
deleted file mode 100644 (file)
index e02e7ca..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-Id: comedi_calibrate.c,v 1.36 2002/06/12 23:19:39 ds Exp 
-Driver name: ni_pcimio
-Device name: pci-6023e
-Id: ni.c,v 1.30 2002/06/12 23:19:39 ds Exp 
-Comedi version: 0.7.65
-ai, bipolar zero offset, low gain
-offset -0.012248(38), target 0
-caldac[0] gain=-1.20044(52)e-4 V/bit S_min=60353.2 dof=254
-caldac[1] gain= V/bit S_min=inf dof=254
-caldac[2] gain= V/bit S_min=inf dof=254
-caldac[3] gain= V/bit S_min=inf dof=254
-caldac[4] gain=-7.68330(56)e-4 V/bit S_min=57620.1 dof=254
-caldac[5] gain= V/bit S_min=inf dof=254
-caldac[6] gain= V/bit S_min=inf dof=254
-caldac[7] gain= V/bit S_min=inf dof=254
-caldac[8] gain= V/bit S_min=inf dof=254
-caldac[9] gain=-2.47(13)e-9 V/bit S_min=65407.1 dof=254
-caldac[10] gain= V/bit S_min=inf dof=254
-caldac[11] gain= V/bit S_min=inf dof=254
-ai, bipolar zero offset, high gain
-offset 3.3644(13)e-3, target 0
-caldac[0] gain=-1.187088(26)e-4 V/bit S_min=3096.05 dof=254
-caldac[2] gain=-4.007(12)e-7 V/bit S_min=323.641 dof=254
-caldac[4] gain=-3.8457(12)e-6 V/bit S_min=329.221 dof=254
-caldac[8] gain=-2.0504(12)e-6 V/bit S_min=287.303 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.998779( 0), target 5
-caldac[0] gain=-1.21374(54)e-4 V/bit S_min=58731.7 dof=254
-caldac[2] gain=-5.98461(60)e-4 V/bit S_min=48971.1 dof=254
-caldac[4] gain=-7.64458(58)e-4 V/bit S_min=54496.4 dof=254
-caldac[8] gain=-2.90(17)e-7 V/bit S_min=753.706 dof=254
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, high
-gain
-caldac[4] gain=-7.68318(55)e-4 V/bit S_min=59349.6 dof=254
-caldac[4] gain=-3.8481(12)e-6 V/bit S_min=323.478 dof=254
-caldac[4] set to 106 (106.442)
-linear: ai, bipolar zero offset, high gain
-caldac[0] gain=-1.186974(26)e-4 V/bit S_min=2972.99 dof=254
-caldac[0] set to 157 (157.229)
-linear: ai, bipolar voltage reference, low gain
-caldac[2] gain=-5.99000(59)e-4 V/bit S_min=51115.6 dof=254
-caldac[2] set to 145 (145.074)
-ai, bipolar zero offset, low gain
-offset 1.87(14)e-3, target 0
-caldac[0] gain=-1.23059(58)e-4 V/bit S_min=54266.7 dof=254
-caldac[2] gain=2.68(13)e-6 V/bit S_min=843.073 dof=254
-caldac[4] gain=-7.66774(56)e-4 V/bit S_min=58642.8 dof=254
-caldac[8] gain=-6.87(12)e-6 V/bit S_min=1365.67 dof=254
-ai, bipolar zero offset, high gain
-offset -1.114(13)e-4, target 0
-caldac[0] gain=-1.184377(26)e-4 V/bit S_min=2980.93 dof=254
-caldac[2] gain=1.80(12)e-8 V/bit S_min=273.599 dof=254
-caldac[4] gain=-3.8415(12)e-6 V/bit S_min=613.354 dof=254
-caldac[8] gain=-2.0597(12)e-6 V/bit S_min=543.625 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.998779( 0), target 5
-caldac[0] gain=-1.22230(53)e-4 V/bit S_min=57428.6 dof=254
-caldac[1] gain=-3.21(13)e-9 V/bit S_min=65141.7 dof=254
-caldac[2] gain=-5.99181(58)e-4 V/bit S_min=52709.2 dof=254
-caldac[3] gain=1.61(25)e-9 V/bit S_min=32726.9 dof=254
-caldac[4] gain=-7.63735(56)e-4 V/bit S_min=60697.6 dof=254
-caldac[5] gain=-5.35(50)e-9 V/bit S_min=16141.6 dof=254
-caldac[7] gain=3.15(13)e-9 V/bit S_min=65163.8 dof=254
-caldac[8] gain=-3.40(13)e-9 V/bit S_min=65061.7 dof=254
-caldac[9] gain=-6.10(38)e-9 V/bit S_min=21497.1 dof=254
diff --git a/comedi_calibrate/results/pci-6024e b/comedi_calibrate/results/pci-6024e
deleted file mode 100644 (file)
index 2584ef2..0000000
+++ /dev/null
@@ -1,170 +0,0 @@
-eeprom reference lsb=244 msb=255
-resulting reference voltage: 4.99999
-Warning: device may not be not fully calibrated due to insufficient information.
-Please file a bug report at https://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing option: --verbose
-Forcing options: --reset --dump --calibrate --results
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp 
-Driver name: ni_pcimio
-Device name: pci-6024e
-Id: ni.c,v 1.136 2005/09/09 01:06:25 fmhess Exp 
-Comedi version: 0.7.70
-ai, bipolar zero offset, low gain
-reading 0.029232(87), target 0
-caldac[0] gain=-1.176(12)e-4 V/bit S_min=1.56105 dof=14
-caldac[4] gain=-7.746(12)e-4 V/bit S_min=9.60921 dof=14
-ai, bipolar zero offset, high gain
-reading 2.6042(64)e-4, target 0
-caldac[0] gain=-1.182947(87)e-4 V/bit S_min=519.555 dof=14
-caldac[4] gain=-3.8679(87)e-6 V/bit S_min=2.66936 dof=14
-caldac[8] gain=-2.0382(88)e-6 V/bit S_min=1.1106 dof=14
-ai, bipolar voltage reference, low gain
-reading 5.026595(86), target 4.99999
-caldac[0] gain=-1.133(12)e-4 V/bit S_min=6.12079 dof=14
-caldac[2] gain=-5.753(12)e-4 V/bit S_min=23.6343 dof=14
-caldac[4] gain=-7.701(12)e-4 V/bit S_min=7.8218 dof=14
-ao 0, zero offset, low gain
-reading 0.022865(84), target 0.002442
-caldac[0] gain=-1.168(12)e-4 V/bit S_min=1.88818 dof=14
-caldac[4] gain=-7.752(12)e-4 V/bit S_min=7.0134 dof=14
-caldac[6] gain=-7.809(12)e-4 V/bit S_min=4.66646 dof=14
-caldac[10] gain=-1.158(12)e-4 V/bit S_min=1.64498 dof=14
-ao 0, reference voltage, low gain
-reading 8.029337(86), target 8.00244
-caldac[0] gain=-1.177(12)e-4 V/bit S_min=0.85016 dof=14
-caldac[2] gain=-9.273(12)e-4 V/bit S_min=39.3068 dof=14
-caldac[4] gain=-7.742(12)e-4 V/bit S_min=2.03086 dof=14
-caldac[6] gain=-7.795(12)e-4 V/bit S_min=3.40193 dof=14
-caldac[10] gain=-1.771(12)e-4 V/bit S_min=1.47652 dof=14
-caldac[11] gain=-2.597(12)e-4 V/bit S_min=1.1089 dof=14
-ao 0, linearity (mid), low gain
-reading 4.025956(87), target 4.00244
-caldac[0] gain=-1.184(12)e-4 V/bit S_min=0.96322 dof=14
-caldac[2] gain=-4.623(12)e-4 V/bit S_min=13.4655 dof=14
-caldac[4] gain=-7.712(12)e-4 V/bit S_min=1.8761 dof=14
-caldac[6] gain=-7.760(12)e-4 V/bit S_min=1.2733 dof=14
-caldac[10] gain=-1.613(12)e-4 V/bit S_min=0.40564 dof=14
-caldac[11] gain=-1.299(12)e-4 V/bit S_min=1.28949 dof=14
-ao 1, zero offset, low gain
-reading 0.047505(87), target 0.002442
-caldac[0] gain=-1.180(12)e-4 V/bit S_min=1.59769 dof=14
-caldac[1] gain=-1.155(12)e-4 V/bit S_min=0.958024 dof=14
-caldac[4] gain=-7.751(12)e-4 V/bit S_min=6.40186 dof=14
-caldac[9] gain=-7.782(12)e-4 V/bit S_min=13.1514 dof=14
-ao 1, reference voltage, low gain
-reading 8.055436(86), target 8.00244
-caldac[0] gain=-1.175(12)e-4 V/bit S_min=0.786708 dof=14
-caldac[1] gain=-1.769(12)e-4 V/bit S_min=1.16282 dof=14
-caldac[2] gain=-9.299(12)e-4 V/bit S_min=40.0402 dof=14
-caldac[4] gain=-7.737(12)e-4 V/bit S_min=3.53267 dof=14
-caldac[5] gain=-2.596(12)e-4 V/bit S_min=0.914595 dof=14
-caldac[9] gain=-7.776(12)e-4 V/bit S_min=5.69436 dof=14
-ao 1, linearity (mid), low gain
-reading 4.051516(85), target 4.00244
-caldac[0] gain=-1.183(12)e-4 V/bit S_min=1.09631 dof=14
-caldac[1] gain=-1.614(12)e-4 V/bit S_min=1.67152 dof=14
-caldac[2] gain=-4.640(12)e-4 V/bit S_min=9.11251 dof=14
-caldac[4] gain=-7.709(12)e-4 V/bit S_min=2.18383 dof=14
-caldac[5] gain=-1.307(12)e-4 V/bit S_min=0.651125 dof=14
-caldac[9] gain=-7.738(12)e-4 V/bit S_min=6.27676 dof=14
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage reference, low gain
-caldac[2] set to 123
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset, high gain
-caldac[4] set to 164
-binary: ai, bipolar zero offset, high gain
-caldac[0] set to 127
-binary: ai, bipolar zero offset, high gain
-caldac[8] set to 183
-linearity binary: ao 0, zero offset, low gain,
-ao 0, linearity (mid), low gain,
-ao 0, reference voltage, low gain
-caldac[10] set to 138
-binary: ao 0, zero offset, low gain
-caldac[6] set to 114
-binary: ao 0, reference voltage, low gain
-caldac[11] set to 165
-linearity binary: ao 1, zero offset, low gain,
-ao 1, linearity (mid), low gain,
-ao 1, reference voltage, low gain
-caldac[1] set to 127
-binary: ao 1, zero offset, low gain
-caldac[9] set to 147
-binary: ao 1, reference voltage, low gain
-caldac[5] set to 175
-writing calibration to /usr/local/var/lib/comedi/calibrations/ni_pcimio_pci-6024e_comedi0
-ai, bipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 0, aref 3
-reading 1.57(89)e-4, target 0
-caldac[0] gain=-1.238(12)e-4 V/bit S_min=8.92001 dof=14
-caldac[4] gain=-7.759(12)e-4 V/bit S_min=12.673 dof=14
-ai, bipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 3, aref 3
-reading 7.2(67)e-7, target 0
-caldac[0] gain=-1.183379(87)e-4 V/bit S_min=497.471 dof=14
-caldac[4] gain=-3.8764(88)e-6 V/bit S_min=2.59514 dof=14
-caldac[8] gain=-2.0601(88)e-6 V/bit S_min=2.85619 dof=14
-ai, bipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 0, aref 3
-reading 5.000486(83), target 4.99999
-caldac[0] gain=-1.209(12)e-4 V/bit S_min=5.95325 dof=14
-caldac[2] gain=-5.724(11)e-4 V/bit S_min=9.53658 dof=14
-caldac[4] gain=-7.707(12)e-4 V/bit S_min=8.39882 dof=14
-ao 0, zero offset, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 3.129(93)e-3, target 0.002442
-caldac[0] gain=-1.233(12)e-4 V/bit S_min=6.87263 dof=14
-caldac[4] gain=-7.755(12)e-4 V/bit S_min=10.4787 dof=14
-caldac[6] gain=-7.812(12)e-4 V/bit S_min=7.71422 dof=14
-caldac[10] gain=-1.220(12)e-4 V/bit S_min=8.50866 dof=14
-ao 0, reference voltage, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 8.002528(86), target 8.00244
-caldac[0] gain=-1.187(12)e-4 V/bit S_min=1.59891 dof=14
-caldac[2] gain=-9.236(12)e-4 V/bit S_min=38.2312 dof=14
-caldac[4] gain=-7.749(12)e-4 V/bit S_min=2.6078 dof=14
-caldac[6] gain=-7.795(12)e-4 V/bit S_min=1.67777 dof=14
-caldac[10] gain=-1.786(12)e-4 V/bit S_min=1.84272 dof=14
-caldac[11] gain=-2.603(12)e-4 V/bit S_min=2.76891 dof=14
-ao 0, linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 4.002719(85), target 4.00244
-caldac[0] gain=-1.190(12)e-4 V/bit S_min=0.920085 dof=14
-caldac[2] gain=-4.588(12)e-4 V/bit S_min=10.1437 dof=14
-caldac[4] gain=-7.713(12)e-4 V/bit S_min=3.95375 dof=14
-caldac[6] gain=-7.778(12)e-4 V/bit S_min=3.75289 dof=14
-caldac[10] gain=-1.611(12)e-4 V/bit S_min=0.720738 dof=14
-caldac[11] gain=-1.295(12)e-4 V/bit S_min=0.763158 dof=14
-ao 1, zero offset, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 3.448(89)e-3, target 0.002442
-caldac[0] gain=-1.232(12)e-4 V/bit S_min=5.6879 dof=14
-caldac[1] gain=-1.224(12)e-4 V/bit S_min=6.75919 dof=14
-caldac[4] gain=-7.754(12)e-4 V/bit S_min=8.34611 dof=14
-caldac[9] gain=-7.793(12)e-4 V/bit S_min=12.611 dof=14
-ao 1, reference voltage, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 8.002399(88), target 8.00244
-caldac[0] gain=-1.179(12)e-4 V/bit S_min=1.52721 dof=14
-caldac[1] gain=-1.774(12)e-4 V/bit S_min=0.777603 dof=14
-caldac[2] gain=-9.237(12)e-4 V/bit S_min=39.6389 dof=14
-caldac[4] gain=-7.744(12)e-4 V/bit S_min=2.67727 dof=14
-caldac[5] gain=-2.605(12)e-4 V/bit S_min=1.53475 dof=14
-caldac[9] gain=-7.777(12)e-4 V/bit S_min=8.5348 dof=14
-ao 1, linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 4.002862(87), target 4.00244
-caldac[0] gain=-1.177(12)e-4 V/bit S_min=0.832675 dof=14
-caldac[1] gain=-1.609(12)e-4 V/bit S_min=0.821793 dof=14
-caldac[2] gain=-4.590(12)e-4 V/bit S_min=13.6751 dof=14
-caldac[4] gain=-7.713(12)e-4 V/bit S_min=4.8925 dof=14
-caldac[5] gain=-1.306(12)e-4 V/bit S_min=1.46232 dof=14
-caldac[9] gain=-7.751(12)e-4 V/bit S_min=5.65103 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/pci-6025e b/comedi_calibrate/results/pci-6025e
deleted file mode 100644 (file)
index e7d1a4d..0000000
+++ /dev/null
@@ -1,140 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-$Id$
-Driver name: ni_pcimio
-Device name: pci-6025e
-Comedi version: 0.7.63
-ai, bipolar zero offset, low gain
-offset -0.01343(26), target 0
-caldac[0] gain=-2.23(21)e-6 V/bit S_min=233.49 dof=254
-caldac[1] gain=-7.7387(22)e-4 V/bit S_min=931.922 dof=254
-caldac[3] gain=1.93(21)e-6 V/bit S_min=249.617 dof=254
-ai, bipolar zero offset, high gain
-offset 8.8729(20)e-3, target 0
-caldac[0] gain=-2.0585(15)e-6 V/bit S_min=279.627 dof=254
-caldac[1] gain=-3.8289(15)e-6 V/bit S_min=312.432 dof=254
-caldac[3] gain=-1.0756(15)e-6 V/bit S_min=350.288 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.99603(25), target 5
-caldac[0] gain=-1.64(21)e-6 V/bit S_min=297.752 dof=254
-caldac[1] gain=-7.5701(21)e-4 V/bit S_min=1327.63 dof=254
-caldac[3] gain=-6.0114(21)e-4 V/bit S_min=813.714 dof=254
-(null)
-offset 6.96242(24), target 0
-caldac[0] gain=-1.13028(21)e-3 V/bit S_min=6676.08 dof=254
-caldac[1] gain=-1.68982(21)e-3 V/bit S_min=3351.07 dof=254
-caldac[2] gain=-7.9273(21)e-4 V/bit S_min=1560.11 dof=254
-caldac[3] gain=-1.33706(22)e-3 V/bit S_min=5008.37 dof=254
-caldac[4] gain=-6.2633(21)e-4 V/bit S_min=919.464 dof=254
-caldac[5] gain=-5.7213(21)e-4 V/bit S_min=849.526 dof=254
-caldac[6] gain=-5.3020(21)e-4 V/bit S_min=461.504 dof=254
-caldac[7] gain=-4.9135(21)e-4 V/bit S_min=556.227 dof=254
-caldac[8] gain=-4.6718(21)e-4 V/bit S_min=586.265 dof=254
-caldac[9] gain=-4.4122(21)e-4 V/bit S_min=289.969 dof=254
-caldac[10] gain=-4.1989(21)e-4 V/bit S_min=304.064 dof=254
-caldac[11] gain=-4.0530(21)e-4 V/bit S_min=386.4 dof=254
-ao 0, zero offset, low gain
-offset -0.01984(25), target 0.002442
-caldac[0] gain=-1.44(21)e-6 V/bit S_min=255.879 dof=254
-caldac[1] gain=-7.7369(22)e-4 V/bit S_min=989.094 dof=254
-caldac[3] gain=2.85(21)e-6 V/bit S_min=210.052 dof=254
-caldac[4] gain=-1.1383(21)e-4 V/bit S_min=290.896 dof=254
-caldac[5] gain=-7.7399(22)e-4 V/bit S_min=1109.97 dof=254
-ao 0, reference voltage, low gain
-offset 8.28(26)e-3, target -0.001221
-caldac[0] gain=-1.96(21)e-6 V/bit S_min=216.597 dof=254
-caldac[1] gain=-7.7504(22)e-4 V/bit S_min=671.585 dof=254
-caldac[4] gain=-1.5839(22)e-4 V/bit S_min=426.915 dof=254
-caldac[5] gain=-7.7530(21)e-4 V/bit S_min=919.625 dof=254
-ao 1, zero offset, low gain
-offset -0.02892(26), target 0.002442
-caldac[0] gain=-2.08(21)e-6 V/bit S_min=297.96 dof=254
-caldac[1] gain=-7.7257(21)e-4 V/bit S_min=1036.75 dof=254
-caldac[3] gain=3.75(21)e-6 V/bit S_min=215.786 dof=254
-caldac[7] gain=-1.1511(21)e-4 V/bit S_min=297.179 dof=254
-caldac[8] gain=-7.7376(21)e-4 V/bit S_min=917.556 dof=254
-ao 1, reference voltage, low gain
-offset -0.02610(25), target -0.001221
-caldac[0] gain=-2.06(21)e-6 V/bit S_min=256.803 dof=254
-caldac[1] gain=-7.7311(21)e-4 V/bit S_min=961.575 dof=254
-caldac[3] gain=3.57(21)e-6 V/bit S_min=231.536 dof=254
-caldac[7] gain=-1.5380(21)e-4 V/bit S_min=243.77 dof=254
-caldac[8] gain=-7.7419(21)e-4 V/bit S_min=874.129 dof=254
-caldac[9] gain=-1.6373(21)e-4 V/bit S_min=269.088 dof=254
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, high gain
-caldac[1] gain=-7.7403(21)e-4 V/bit S_min=775.671 dof=254
-caldac[1] gain=-3.8324(15)e-6 V/bit S_min=291.11 dof=254
-caldac[1] set to 99 (99.1716)
-linear: ai, bipolar zero offset, high gain
-caldac[0] gain=-2.0507(15)e-6 V/bit S_min=302.141 dof=254
-caldac set out of range (4505>255)
-caldac[0] set to 4505 (4504.93)
-linear: ai, bipolar voltage reference, low gain
-caldac[3] gain=-6.0171(21)e-4 V/bit S_min=1178.8 dof=254
-caldac[3] set to 156 (156.247)
-linear: ao 0, zero offset, low gain
-caldac[4] gain=-1.1886(21)e-4 V/bit S_min=351.103 dof=254
-caldac[4] set to 119 (118.933)
-linear: ao 0, reference voltage, low gain
-caldac[5] gain=-7.7267(22)e-4 V/bit S_min=893.237 dof=254
-caldac[5] set to 168 (168.396)
-linear: ao 1, zero offset, low gain
-caldac[8] gain=-7.7305(21)e-4 V/bit S_min=748.1 dof=254
-caldac[8] set to 115 (114.729)
-linear: ao 1, reference voltage, low gain
-caldac[9] gain=-1.6735(22)e-4 V/bit S_min=419.204 dof=254
-caldac[9] set to 163 (162.774)
-ai, bipolar zero offset, low gain
-offset 8.51(24)e-3, target 0
-caldac[0] gain=-1.78(21)e-6 V/bit S_min=215.029 dof=254
-caldac[1] gain=-7.7131(21)e-4 V/bit S_min=753.762 dof=254
-ai, bipolar zero offset, high gain
-offset 8.6842(17)e-3, target 0
-caldac[0] gain=-2.0462(15)e-6 V/bit S_min=268.357 dof=254
-caldac[1] gain=-3.8184(15)e-6 V/bit S_min=315.928 dof=254
-caldac[3] gain=-1.0696(15)e-6 V/bit S_min=400.31 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.99977(22), target 5
-caldac[0] gain=-2.48(21)e-6 V/bit S_min=260.761 dof=254
-caldac[1] gain=-7.5579(21)e-4 V/bit S_min=1347.4 dof=254
-caldac[3] gain=-6.0228(21)e-4 V/bit S_min=1185.29 dof=254
-(null)
-offset 3.80716(22), target 0
-caldac[0] gain=-4.5320(21)e-4 V/bit S_min=242.76 dof=254
-caldac[1] gain=-1.18959(21)e-3 V/bit S_min=302.09 dof=254
-caldac[2] gain=-4.0973(21)e-4 V/bit S_min=314.556 dof=254
-caldac[3] gain=-7.6729(21)e-4 V/bit S_min=1374.88 dof=254
-caldac[4] gain=-3.7862(21)e-4 V/bit S_min=317.8 dof=254
-caldac[5] gain=-3.7079(21)e-4 V/bit S_min=395.505 dof=254
-caldac[6] gain=-3.5913(21)e-4 V/bit S_min=398.014 dof=254
-caldac[7] gain=-3.4752(21)e-4 V/bit S_min=328.983 dof=254
-caldac[8] gain=-3.3864(21)e-4 V/bit S_min=316.578 dof=254
-caldac[9] gain=-3.3065(21)e-4 V/bit S_min=313.456 dof=254
-caldac[10] gain=-3.2323(21)e-4 V/bit S_min=271.156 dof=254
-caldac[11] gain=-3.1661(21)e-4 V/bit S_min=270.249 dof=254
-ao 0, zero offset, low gain
-offset -0.02938(26), target 0.002442
-caldac[0] gain=-2.27(21)e-6 V/bit S_min=252.397 dof=254
-caldac[1] gain=-7.6774(22)e-4 V/bit S_min=1035.99 dof=254
-caldac[3] gain=3.98(21)e-6 V/bit S_min=247.9 dof=254
-caldac[4] gain=-1.1364(21)e-4 V/bit S_min=276.954 dof=254
-caldac[5] gain=-7.7285(21)e-4 V/bit S_min=838.8 dof=254
-ao 0, reference voltage, low gain
-offset -1.87(25)e-3, target -0.001221
-caldac[0] gain=-2.17(21)e-6 V/bit S_min=289.112 dof=254
-caldac[1] gain=-7.7046(22)e-4 V/bit S_min=868.735 dof=254
-caldac[4] gain=-1.5721(21)e-4 V/bit S_min=407.363 dof=254
-caldac[5] gain=-7.7263(21)e-4 V/bit S_min=872.881 dof=254
-ao 1, zero offset, low gain
-offset 1.68(25)e-3, target 0.002442
-caldac[0] gain=-2.25(22)e-6 V/bit S_min=306.047 dof=254
-caldac[1] gain=-7.7066(21)e-4 V/bit S_min=979.649 dof=254
-caldac[7] gain=-1.1895(21)e-4 V/bit S_min=374.344 dof=254
-caldac[8] gain=-7.7338(21)e-4 V/bit S_min=809.456 dof=254
-ao 1, reference voltage, low gain
-offset -2.02(24)e-3, target -0.001221
-caldac[0] gain=-2.07(21)e-6 V/bit S_min=295.607 dof=254
-caldac[1] gain=-7.7000(21)e-4 V/bit S_min=892.067 dof=254
-caldac[7] gain=-1.5713(21)e-4 V/bit S_min=390.915 dof=254
-caldac[8] gain=-7.7292(21)e-4 V/bit S_min=765.604 dof=254
-caldac[9] gain=-1.6707(21)e-4 V/bit S_min=449.274 dof=254
diff --git a/comedi_calibrate/results/pci-6031e b/comedi_calibrate/results/pci-6031e
deleted file mode 100644 (file)
index b0fee3b..0000000
+++ /dev/null
@@ -1,391 +0,0 @@
-eeprom reference lsb=42 msb=255
-resulting reference voltage: 4.99979
-Warning: device may not be not fully calibrated due to insufficient information.
-Please file a bug report at http://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing option: --verbose
-Forcing options: --reset --dump --calibrate --results
-Id: comedi_calibrate.c,v 1.88 2003/07/19 19:16:41 fmhess Exp
-Driver name: ni_pcimio
-Device name: pci-6031e
-Id: ni.c,v 1.95 2003/07/20 05:10:13 fmhess Exp
-Comedi version: 0.7.66
-ai, bipolar zero offset, low gain
-reading 5.99(24)e-3, target 0
-caldac[2] gain=4.04879(67)e-4 V/bit S_min=70.834 dof=14
-caldac[3] gain=4.054(67)e-6 V/bit S_min=2.98949 dof=14
-caldac[8] gain=6.328(42)e-7 V/bit S_min=2.35067 dof=14
-ai, bipolar zero offset, high gain
-reading 3.3853(20)e-4, target 0
-caldac[2] gain=4.0501(28)e-6 V/bit S_min=5.18433 dof=14
-caldac[3] gain=3.84(27)e-8 V/bit S_min=1.50076 dof=14
-caldac[8] gain=6.2321(18)e-7 V/bit S_min=4.20467 dof=14
-ai, bipolar voltage reference, low gain
-reading 5.0086923(57), target 4.99979
-caldac[0] gain=-4.5898(67)e-5 V/bit S_min=17.5935 dof=14
-caldac[1] gain=-2.584(68)e-6 V/bit S_min=2.4014 dof=14
-caldac[2] gain=4.04669(68)e-4 V/bit S_min=68.5688 dof=14
-caldac[3] gain=3.967(69)e-6 V/bit S_min=4.65183 dof=14
-caldac[8] gain=6.293(43)e-7 V/bit S_min=4.3692 dof=14
-ai, unipolar zero offset, low gain
-reading 9.9438(33)e-3, target 7.62951e-05
-caldac[2] gain=2.43328(25)e-4 V/bit S_min=1.59247e+07 dof=14
-caldac[3] gain=3.990(44)e-6 V/bit S_min=2.35112 dof=14
-caldac[8] gain=6.275(27)e-7 V/bit S_min=2.02595 dof=14
-ai, unipolar zero offset, high gain
-reading 3.3748(19)e-4, target 7.62951e-07
-caldac[2] gain=3.6192(22)e-6 V/bit S_min=55827 dof=14
-caldac[3] gain=4.13(27)e-8 V/bit S_min=1.35945 dof=14
-caldac[8] gain=4.0525(10)e-7 V/bit S_min=1.94037e+06 dof=14
-ai, unipolar voltage reference, low gain
-reading 5.0085863(35), target 4.99979
-caldac[0] gain=-4.5658(46)e-5 V/bit S_min=8.02503 dof=14
-caldac[1] gain=-2.529(46)e-6 V/bit S_min=1.5732 dof=14
-caldac[2] gain=4.04641(45)e-4 V/bit S_min=106.262 dof=14
-caldac[3] gain=3.970(46)e-6 V/bit S_min=1.87278 dof=14
-caldac[8] gain=6.257(29)e-7 V/bit S_min=1.89956 dof=14
-ao 0, zero offset, low gain
-reading 3.9328(55)e-3, target 0.00015259
-caldac[2] gain=4.04918(69)e-4 V/bit S_min=49.094 dof=14
-caldac[3] gain=4.041(69)e-6 V/bit S_min=4.11065 dof=14
-caldac[6] gain=-7.8674(68)e-5 V/bit S_min=48.022 dof=14
-caldac[8] gain=6.125(42)e-7 V/bit S_min=21.6755 dof=14
-ao 0, reference voltage, low gain
-reading 7.9991637(54), target 8.00015
-caldac[0] gain=-7.3089(72)e-5 V/bit S_min=19.5044 dof=14
-caldac[1] gain=-4.085(73)e-6 V/bit S_min=7.07179 dof=14
-caldac[2] gain=4.04562(72)e-4 V/bit S_min=61.2554 dof=14
-caldac[3] gain=3.981(73)e-6 V/bit S_min=2.41722 dof=14
-caldac[4] gain=6.1756(73)e-5 V/bit S_min=18.3723 dof=14
-caldac[6] gain=-7.8378(72)e-5 V/bit S_min=10.1452 dof=14
-caldac[8] gain=6.344(47)e-7 V/bit S_min=5.01001 dof=14
-ao 0, linearity (mid), low gain
-reading 4.0015515(54), target 4.00015
-caldac[0] gain=-3.6483(70)e-5 V/bit S_min=23.6256 dof=14
-caldac[1] gain=-2.027(69)e-6 V/bit S_min=4.67672 dof=14
-caldac[2] gain=4.04568(68)e-4 V/bit S_min=92.8256 dof=14
-caldac[3] gain=3.945(69)e-6 V/bit S_min=7.55072 dof=14
-caldac[4] gain=3.0787(69)e-5 V/bit S_min=15.2125 dof=14
-caldac[6] gain=-7.8085(68)e-5 V/bit S_min=10.0366 dof=14
-caldac[8] gain=6.259(44)e-7 V/bit S_min=7.13501 dof=14
-ao 1, zero offset, low gain
-reading 2.8396(49)e-3, target 0.00015259
-caldac[2] gain=4.04838(69)e-4 V/bit S_min=48.0651 dof=14
-caldac[3] gain=4.077(70)e-6 V/bit S_min=2.11465 dof=14
-caldac[7] gain=-7.8712(69)e-5 V/bit S_min=33.9078 dof=14
-caldac[8] gain=6.235(43)e-7 V/bit S_min=4.26418 dof=14
-ao 1, reference voltage, low gain
-reading 7.9964669(55), target 8.00015
-caldac[0] gain=-7.2892(72)e-5 V/bit S_min=13.8399 dof=14
-caldac[1] gain=-4.013(72)e-6 V/bit S_min=1.41529 dof=14
-caldac[2] gain=4.04474(73)e-4 V/bit S_min=64.7184 dof=14
-caldac[3] gain=4.071(71)e-6 V/bit S_min=2.27148 dof=14
-caldac[5] gain=6.2592(72)e-5 V/bit S_min=16.0406 dof=14
-caldac[7] gain=-7.8395(73)e-5 V/bit S_min=16.1578 dof=14
-caldac[8] gain=6.229(45)e-7 V/bit S_min=3.65689 dof=14
-ao 1, linearity (mid), low gain
-reading 3.9996817(55), target 4.00015
-caldac[0] gain=-3.6401(68)e-5 V/bit S_min=16.0381 dof=14
-caldac[1] gain=-2.062(71)e-6 V/bit S_min=1.52891 dof=14
-caldac[2] gain=4.04565(69)e-4 V/bit S_min=76.428 dof=14
-caldac[3] gain=4.047(70)e-6 V/bit S_min=1.09659 dof=14
-caldac[5] gain=3.1091(70)e-5 V/bit S_min=15.3441 dof=14
-caldac[7] gain=-7.8368(72)e-5 V/bit S_min=12.8318 dof=14
-caldac[8] gain=6.114(43)e-7 V/bit S_min=12.7556 dof=14
-ao 0, unipolar zero offset, low gain
-reading 9.8114(54)e-3, target 0
-caldac[2] gain=4.04834(69)e-4 V/bit S_min=53.4796 dof=14
-caldac[3] gain=4.030(68)e-6 V/bit S_min=4.29038 dof=14
-caldac[6] gain=-7.8148(66)e-5 V/bit S_min=16.1927 dof=14
-caldac[8] gain=6.350(42)e-7 V/bit S_min=4.4994 dof=14
-ao 0, unipolar high, low gain
-reading 9.0032208(53), target 9.00008
-caldac[0] gain=-8.2151(70)e-5 V/bit S_min=17.1504 dof=14
-caldac[1] gain=-4.716(71)e-6 V/bit S_min=1.90457 dof=14
-caldac[2] gain=4.04603(71)e-4 V/bit S_min=72.3059 dof=14
-caldac[3] gain=4.116(71)e-6 V/bit S_min=1.89019 dof=14
-caldac[4] gain=6.9394(70)e-5 V/bit S_min=8.55042 dof=14
-caldac[6] gain=-7.8113(72)e-5 V/bit S_min=5.80267 dof=14
-caldac[8] gain=6.258(44)e-7 V/bit S_min=4.89137 dof=14
-ao 0, unipolar linearity (low), low gain
-reading 1.0092266(51), target 1.00008
-caldac[0] gain=-9.250(68)e-6 V/bit S_min=1.75561 dof=14
-caldac[1] gain=-5.17(69)e-7 V/bit S_min=0.921118 dof=14
-caldac[2] gain=4.04578(67)e-4 V/bit S_min=90.2805 dof=14
-caldac[3] gain=3.887(66)e-6 V/bit S_min=2.39683 dof=14
-caldac[4] gain=7.770(67)e-6 V/bit S_min=3.34322 dof=14
-caldac[6] gain=-7.8358(68)e-5 V/bit S_min=19.1612 dof=14
-caldac[8] gain=6.233(42)e-7 V/bit S_min=3.54452 dof=14
-ao 0, unipolar linearity (mid), low gain
-reading 5.0061781(52), target 5.00008
-caldac[0] gain=-4.5663(67)e-5 V/bit S_min=21.7487 dof=14
-caldac[1] gain=-2.553(68)e-6 V/bit S_min=7.47434 dof=14
-caldac[2] gain=4.04661(68)e-4 V/bit S_min=71.6708 dof=14
-caldac[3] gain=3.940(68)e-6 V/bit S_min=1.96052 dof=14
-caldac[4] gain=3.8609(71)e-5 V/bit S_min=19.9348 dof=14
-caldac[6] gain=-7.8283(68)e-5 V/bit S_min=22.4617 dof=14
-caldac[8] gain=6.287(43)e-7 V/bit S_min=4.89577 dof=14
-ao 1, unipolar zero offset, low gain
-reading 0.0101258(50), target 0
-caldac[2] gain=4.04916(68)e-4 V/bit S_min=72.4479 dof=14
-caldac[3] gain=4.105(68)e-6 V/bit S_min=3.77629 dof=14
-caldac[7] gain=-7.8408(69)e-5 V/bit S_min=17.2061 dof=14
-caldac[8] gain=6.322(43)e-7 V/bit S_min=4.14499 dof=14
-ao 1, unipolar high, low gain
-reading 9.0011230(55), target 9.00008
-caldac[0] gain=-8.2038(70)e-5 V/bit S_min=18.7872 dof=14
-caldac[1] gain=-4.486(70)e-6 V/bit S_min=8.58652 dof=14
-caldac[2] gain=4.04525(71)e-4 V/bit S_min=73.6403 dof=14
-caldac[3] gain=3.912(69)e-6 V/bit S_min=4.3648 dof=14
-caldac[5] gain=7.0326(70)e-5 V/bit S_min=12.1156 dof=14
-caldac[7] gain=-7.8322(72)e-5 V/bit S_min=13.8258 dof=14
-caldac[8] gain=6.221(45)e-7 V/bit S_min=2.65473 dof=14
-ao 1, unipolar linearity (low), low gain
-reading 1.0092204(52), target 1.00008
-caldac[0] gain=-9.282(68)e-6 V/bit S_min=2.75675 dof=14
-caldac[1] gain=-5.30(69)e-7 V/bit S_min=1.22983 dof=14
-caldac[2] gain=4.04591(67)e-4 V/bit S_min=75.6609 dof=14
-caldac[3] gain=3.892(67)e-6 V/bit S_min=2.55383 dof=14
-caldac[5] gain=7.848(67)e-6 V/bit S_min=3.98235 dof=14
-caldac[7] gain=-7.8453(68)e-5 V/bit S_min=13.3494 dof=14
-caldac[8] gain=6.235(43)e-7 V/bit S_min=3.78911 dof=14
-ao 1, unipolar linearity (mid), low gain
-reading 5.0051523(55), target 5.00008
-caldac[0] gain=-4.5648(69)e-5 V/bit S_min=25.8429 dof=14
-caldac[1] gain=-2.606(69)e-6 V/bit S_min=2.39754 dof=14
-caldac[2] gain=4.04755(69)e-4 V/bit S_min=64.4486 dof=14
-caldac[3] gain=3.880(66)e-6 V/bit S_min=18.2457 dof=14
-caldac[5] gain=3.8980(71)e-5 V/bit S_min=17.7696 dof=14
-caldac[7] gain=-7.8606(70)e-5 V/bit S_min=20.829 dof=14
-caldac[8] gain=6.058(42)e-7 V/bit S_min=13.7094 dof=14
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage
-reference, low gain
-caldac[0] set to 102
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset,
-high gain
-caldac[2] set to 103
-binary: ai, bipolar zero offset, high gain
-caldac[8] set to 1659
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage
-reference, low gain
-caldac[1] set to 126
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset,
-high gain
-caldac[3] set to 105
-binary peg: ai, unipolar zero offset, low gain
-caldac[8] set to 4095
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar voltage
-reference, low gain
-caldac[0] set to 104
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar zero offset,
-high gain
-caldac[2] set to 103
-binary: ai, unipolar zero offset, high gain
-caldac[8] set to 1651
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar voltage
-reference, low gain
-caldac[1] set to 101
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar zero offset,
-high gain
-caldac[3] set to 151
-binary: ao 0, zero offset, low gain
-caldac[6] set to 47
-binary: ao 0, reference voltage, low gain
-caldac[4] set to 175
-binary: ao 0, unipolar zero offset, low gain
-caldac[6] set to 124
-binary: ao 0, unipolar high, low gain
-caldac[4] set to 193
-binary: ao 1, zero offset, low gain
-caldac[7] set to 33
-binary: ao 1, reference voltage, low gain
-caldac[5] set to 199
-binary: ao 1, unipolar zero offset, low gain
-caldac[7] set to 127
-binary: ao 1, unipolar high, low gain
-caldac[5] set to 225
-writing calibration to /etc/comedi/calibrations/ni_pcimio_pci-6031e_comedi0
-ai, bipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 0, aref 3
-reading 3.9(56)e-6, target 0
-caldac[2] gain=4.04780(68)e-4 V/bit S_min=51.7431 dof=14
-caldac[3] gain=4.259(69)e-6 V/bit S_min=15.6127 dof=14
-caldac[8] gain=6.454(42)e-7 V/bit S_min=19.2309 dof=14
-ai, bipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 6, aref 3
-reading -2.2(22)e-7, target 0
-caldac[2] gain=4.0468(28)e-6 V/bit S_min=4.50405 dof=14
-caldac[3] gain=4.14(29)e-8 V/bit S_min=1.5564 dof=14
-caldac[8] gain=6.2340(18)e-7 V/bit S_min=2.22969 dof=14
-ai, bipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 0, aref 3
-reading 4.9998024(52), target 4.99979
-caldac[0] gain=-4.5834(68)e-5 V/bit S_min=22.1202 dof=14
-caldac[1] gain=-2.560(69)e-6 V/bit S_min=2.19664 dof=14
-caldac[2] gain=4.04600(68)e-4 V/bit S_min=77.8305 dof=14
-caldac[3] gain=3.997(71)e-6 V/bit S_min=1.64743 dof=14
-caldac[8] gain=6.392(44)e-7 V/bit S_min=4.63247 dof=14
-ai, unipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 7, aref 3
-reading 6.63(26)e-5, target 7.62951e-05
-caldac[2] gain=2.42361(25)e-4 V/bit S_min=1.57664e+07 dof=14
-caldac[3] gain=1.559(20)e-6 V/bit S_min=2091.83 dof=14
-caldac[8] gain=3.902(16)e-7 V/bit S_min=8272.41 dof=14
-ai, unipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 13, aref 3
-reading 1.207(81)e-6, target 7.62951e-07
-caldac[2] gain=2.3973(15)e-6 V/bit S_min=420715 dof=14
-caldac[3] gain=8.69(88)e-9 V/bit S_min=7.36233 dof=14
-caldac[8] gain=3.71294(93)e-7 V/bit S_min=2.6091e+06 dof=14
-ai, unipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 7, aref 3
-reading 4.9998222(38), target 4.99979
-caldac[0] gain=-4.5641(46)e-5 V/bit S_min=8.65597 dof=14
-caldac[1] gain=-2.688(48)e-6 V/bit S_min=1.40658 dof=14
-caldac[2] gain=4.04520(46)e-4 V/bit S_min=137.355 dof=14
-caldac[3] gain=4.091(47)e-6 V/bit S_min=5.22047 dof=14
-caldac[8] gain=6.309(29)e-7 V/bit S_min=4.77719 dof=14
-ao 0, zero offset, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading -4.25(32)e-4, target 0.00015259
-caldac[2] gain=4.04805(70)e-4 V/bit S_min=53.4836 dof=14
-caldac[3] gain=4.113(71)e-6 V/bit S_min=10.21 dof=14
-caldac[6] gain=-7.8557(68)e-5 V/bit S_min=58.2426 dof=14
-caldac[8] gain=6.097(42)e-7 V/bit S_min=11.0274 dof=14
-ao 0, reference voltage, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 8.000000(25), target 8.00015
-caldac[0] gain=-7.3191(73)e-5 V/bit S_min=12.3634 dof=14
-caldac[1] gain=-4.054(74)e-6 V/bit S_min=1.26773 dof=14
-caldac[2] gain=4.04527(73)e-4 V/bit S_min=43.1088 dof=14
-caldac[3] gain=3.941(73)e-6 V/bit S_min=5.63113 dof=14
-caldac[4] gain=6.1762(73)e-5 V/bit S_min=33.2368 dof=14
-caldac[6] gain=-7.8285(75)e-5 V/bit S_min=17.3662 dof=14
-caldac[8] gain=6.293(46)e-7 V/bit S_min=2.52635 dof=14
-ao 0, linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 3.999824(28), target 4.00015
-caldac[0] gain=-3.6226(71)e-5 V/bit S_min=16.7177 dof=14
-caldac[1] gain=-1.940(68)e-6 V/bit S_min=2.77332 dof=14
-caldac[2] gain=4.04478(69)e-4 V/bit S_min=86.1423 dof=14
-caldac[3] gain=3.988(70)e-6 V/bit S_min=2.27108 dof=14
-caldac[4] gain=3.0650(69)e-5 V/bit S_min=10.9673 dof=14
-caldac[6] gain=-7.8281(71)e-5 V/bit S_min=12.4089 dof=14
-caldac[8] gain=6.275(44)e-7 V/bit S_min=2.59036 dof=14
-ao 1, zero offset, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading -5.71(40)e-4, target 0.00015259
-caldac[2] gain=4.04772(69)e-4 V/bit S_min=53.4008 dof=14
-caldac[3] gain=4.130(72)e-6 V/bit S_min=14.5019 dof=14
-caldac[7] gain=-7.8632(68)e-5 V/bit S_min=38.2077 dof=14
-caldac[8] gain=6.230(43)e-7 V/bit S_min=2.98913 dof=14
-ao 1, reference voltage, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 7.999523(31), target 8.00015
-caldac[0] gain=-7.3102(71)e-5 V/bit S_min=22.2042 dof=14
-caldac[1] gain=-4.102(73)e-6 V/bit S_min=2.70393 dof=14
-caldac[2] gain=4.04506(72)e-4 V/bit S_min=50.5004 dof=14
-caldac[3] gain=3.972(70)e-6 V/bit S_min=4.26868 dof=14
-caldac[5] gain=6.2574(71)e-5 V/bit S_min=30.1299 dof=14
-caldac[7] gain=-7.8202(69)e-5 V/bit S_min=14.0954 dof=14
-caldac[8] gain=6.285(45)e-7 V/bit S_min=5.91259 dof=14
-ao 1, linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 3.999523(35), target 4.00015
-caldac[0] gain=-3.6299(70)e-5 V/bit S_min=12.504 dof=14
-caldac[1] gain=-1.927(69)e-6 V/bit S_min=2.27594 dof=14
-caldac[2] gain=4.04498(70)e-4 V/bit S_min=92.4139 dof=14
-caldac[3] gain=3.934(71)e-6 V/bit S_min=2.32116 dof=14
-caldac[5] gain=3.1088(69)e-5 V/bit S_min=14.4494 dof=14
-caldac[7] gain=-7.8420(71)e-5 V/bit S_min=12.5189 dof=14
-caldac[8] gain=6.380(44)e-7 V/bit S_min=2.26274 dof=14
-ao 0, unipolar zero offset, low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 4.62(54)e-5, target 0
-caldac[2] gain=4.04783(69)e-4 V/bit S_min=51.9655 dof=14
-caldac[3] gain=4.257(69)e-6 V/bit S_min=12.3014 dof=14
-caldac[6] gain=-7.8314(68)e-5 V/bit S_min=16.7364 dof=14
-caldac[8] gain=6.437(43)e-7 V/bit S_min=17.8705 dof=14
-ao 0, unipolar high, low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 8.9999952(55), target 9.00008
-caldac[0] gain=-8.2238(70)e-5 V/bit S_min=24.4124 dof=14
-caldac[1] gain=-4.497(71)e-6 V/bit S_min=11.9844 dof=14
-caldac[2] gain=4.04392(71)e-4 V/bit S_min=63.3871 dof=14
-caldac[3] gain=3.867(70)e-6 V/bit S_min=5.20063 dof=14
-caldac[4] gain=6.9462(70)e-5 V/bit S_min=12.7513 dof=14
-caldac[6] gain=-7.8282(72)e-5 V/bit S_min=18.1888 dof=14
-caldac[8] gain=6.315(44)e-7 V/bit S_min=3.99416 dof=14
-ao 0, unipolar linearity (low), low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 1.0001356(52), target 1.00008
-caldac[0] gain=-8.990(66)e-6 V/bit S_min=9.45288 dof=14
-caldac[1] gain=-5.10(71)e-7 V/bit S_min=0.688715 dof=14
-caldac[2] gain=4.04478(68)e-4 V/bit S_min=81.3919 dof=14
-caldac[3] gain=4.097(68)e-6 V/bit S_min=1.49483 dof=14
-caldac[4] gain=7.808(68)e-6 V/bit S_min=2.98466 dof=14
-caldac[6] gain=-7.8501(68)e-5 V/bit S_min=24.6859 dof=14
-caldac[8] gain=6.089(42)e-7 V/bit S_min=17.2506 dof=14
-ao 0, unipolar linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 5.0000447(55), target 5.00008
-caldac[0] gain=-4.5822(68)e-5 V/bit S_min=21.8646 dof=14
-caldac[1] gain=-2.564(70)e-6 V/bit S_min=5.55694 dof=14
-caldac[2] gain=4.04639(69)e-4 V/bit S_min=65.6447 dof=14
-caldac[3] gain=4.084(70)e-6 V/bit S_min=3.1727 dof=14
-caldac[4] gain=3.8707(71)e-5 V/bit S_min=15.2584 dof=14
-caldac[6] gain=-7.8156(66)e-5 V/bit S_min=10.0991 dof=14
-caldac[8] gain=6.377(43)e-7 V/bit S_min=5.30329 dof=14
-ao 1, unipolar zero offset, low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 7.87(52)e-5, target 0
-caldac[2] gain=4.04751(68)e-4 V/bit S_min=46.9367 dof=14
-caldac[3] gain=4.208(70)e-6 V/bit S_min=13.0049 dof=14
-caldac[7] gain=-7.8658(67)e-5 V/bit S_min=33.5968 dof=14
-caldac[8] gain=6.465(42)e-7 V/bit S_min=19.9112 dof=14
-ao 1, unipolar high, low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 9.0000018(53), target 9.00008
-caldac[0] gain=-8.2095(70)e-5 V/bit S_min=22.1353 dof=14
-caldac[1] gain=-4.478(70)e-6 V/bit S_min=5.02459 dof=14
-caldac[2] gain=4.04530(71)e-4 V/bit S_min=82.8752 dof=14
-caldac[3] gain=3.877(71)e-6 V/bit S_min=1.84591 dof=14
-caldac[5] gain=7.0365(70)e-5 V/bit S_min=8.5377 dof=14
-caldac[7] gain=-7.8234(68)e-5 V/bit S_min=21.2209 dof=14
-caldac[8] gain=6.308(44)e-7 V/bit S_min=4.37258 dof=14
-ao 1, unipolar linearity (low), low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 1.0001714(51), target 1.00008
-caldac[0] gain=-9.011(66)e-6 V/bit S_min=14.8386 dof=14
-caldac[1] gain=-5.49(70)e-7 V/bit S_min=0.827879 dof=14
-caldac[2] gain=4.04510(68)e-4 V/bit S_min=81.987 dof=14
-caldac[3] gain=4.128(69)e-6 V/bit S_min=1.55977 dof=14
-caldac[5] gain=7.853(68)e-6 V/bit S_min=4.58536 dof=14
-caldac[7] gain=-7.8486(68)e-5 V/bit S_min=12.5535 dof=14
-caldac[8] gain=6.082(42)e-7 V/bit S_min=14.6087 dof=14
-ao 1, unipolar linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 5.0000662(56), target 5.00008
-caldac[0] gain=-4.5866(67)e-5 V/bit S_min=18.4216 dof=14
-caldac[1] gain=-2.525(71)e-6 V/bit S_min=2.50928 dof=14
-caldac[2] gain=4.04577(69)e-4 V/bit S_min=51.028 dof=14
-caldac[3] gain=4.128(70)e-6 V/bit S_min=4.81129 dof=14
-caldac[5] gain=3.9025(70)e-5 V/bit S_min=16.075 dof=14
-caldac[7] gain=-7.8490(70)e-5 V/bit S_min=22.6817 dof=14
-caldac[8] gain=6.392(44)e-7 V/bit S_min=5.31049 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/pci-6032e b/comedi_calibrate/results/pci-6032e
deleted file mode 100644 (file)
index e42c1a4..0000000
+++ /dev/null
@@ -1,68 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-Id: comedi_calibrate.c,v 1.36 2002/06/12 23:19:39 ds Exp 
-Driver name: ni_pcimio
-Device name: pci-6032e
-Id: ni.c,v 1.30 2002/06/12 23:19:39 ds Exp 
-Comedi version: 0.7.65
-ai, bipolar zero offset, low gain
-offset -8.075(13)e-3, target 0
-caldac[0] gain=5.9(11)e-8 V/bit S_min=251.379 dof=254
-caldac[2] gain=4.02269(14)e-4 V/bit S_min=1845.55 dof=254
-caldac[3] gain=4.022(12)e-6 V/bit S_min=307.957 dof=254
-caldac[8] gain=4.8092(72)e-7 V/bit S_min=316.922 dof=254
-ai, bipolar zero offset, high gain
-offset -3.5482(66)e-4, target 0
-caldac[0] gain=2.78(61)e-9 V/bit S_min=277.89 dof=254
-caldac[2] gain=4.02251(62)e-6 V/bit S_min=333.883 dof=254
-caldac[3] gain=4.076(61)e-8 V/bit S_min=298.396 dof=254
-caldac[8] gain=4.84152(39)e-7 V/bit S_min=385.006 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.992227(14), target 5
-caldac[0] gain=-4.5355(12)e-5 V/bit S_min=1609.34 dof=254
-caldac[1] gain=-2.618(12)e-6 V/bit S_min=280.945 dof=254
-caldac[2] gain=4.02003(14)e-4 V/bit S_min=1629.05 dof=254
-caldac[3] gain=4.060(12)e-6 V/bit S_min=344.287 dof=254
-caldac[8] gain=4.8496(73)e-7 V/bit S_min=323.485 dof=254
-ai, unipolar zero offset, low gain
-offset nan, target 0
-caldac[2] gain=4.02393(42)e-4 V/bit S_min=344.731 dof=104
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, high gain
-caldac[2] gain=4.02298(14)e-4 V/bit S_min=1665.08 dof=254
-caldac[2] gain=4.02136(62)e-6 V/bit S_min=428.218 dof=254
-caldac[2] set to 147 (147.03)
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, high gain
-caldac[3] gain=4.714(12)e-6 V/bit S_min=683.361 dof=254
-caldac[3] gain=4.022(61)e-8 V/bit S_min=329.719 dof=254
-caldac[3] set to 63 (62.5578)
-linear: ai, bipolar zero offset, high gain
-caldac[8] gain=4.84164(39)e-7 V/bit S_min=323.225 dof=254
-caldac[8] set to 2619 (2619)
-linear: ai, bipolar voltage reference, low gain
-caldac[0] gain=-4.5615(12)e-5 V/bit S_min=2042.28 dof=254
-caldac[0] set to 137 (136.679)
-linear: ai, bipolar voltage reference, low gain
-caldac[1] gain=-2.860(13)e-6 V/bit S_min=303.635 dof=254
-caldac[1] set to 59 (58.6316)
-ai, bipolar zero offset, low gain
-offset 1.19(15)e-4, target 0
-caldac[2] gain=4.02146(14)e-4 V/bit S_min=1748.84 dof=254
-caldac[3] gain=4.340(12)e-6 V/bit S_min=530.678 dof=254
-caldac[8] gain=5.2718(75)e-7 V/bit S_min=1011.83 dof=254
-ai, bipolar zero offset, high gain
-offset 1.43(79)e-6, target 0
-caldac[2] gain=4.02126(62)e-6 V/bit S_min=414.809 dof=254
-caldac[3] gain=4.268(63)e-8 V/bit S_min=292.963 dof=254
-caldac[8] gain=4.84038(39)e-7 V/bit S_min=296.355 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.999967(16), target 5
-caldac[0] gain=-4.5591(12)e-5 V/bit S_min=1890.95 dof=254
-caldac[1] gain=-2.875(13)e-6 V/bit S_min=297.895 dof=254
-caldac[2] gain=4.01860(14)e-4 V/bit S_min=1444.87 dof=254
-caldac[3] gain=4.299(12)e-6 V/bit S_min=290.844 dof=254
-caldac[8] gain=5.1142(76)e-7 V/bit S_min=451.539 dof=254
-ai, unipolar zero offset, low gain
-offset nan, target 0
-caldac[2] gain=4.02341(42)e-4 V/bit S_min=373.216 dof=104
-caldac[3] gain=4.007(43)e-6 V/bit S_min=102.266 dof=74
-caldac[8] gain=4.76(10)e-7 V/bit S_min=25.194 dof=29
diff --git a/comedi_calibrate/results/pci-6033e b/comedi_calibrate/results/pci-6033e
deleted file mode 100644 (file)
index c379c83..0000000
+++ /dev/null
@@ -1,119 +0,0 @@
-eeprom reference lsb=255 msb=255
-resulting reference voltage: 5
-Warning: device may not be not fully calibrated due to insufficient information.
-Please file a bug report at https://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Forcing options: --reset --dump --calibrate --results
-Id: comedi_calibrate.c,v 1.91 2004/02/15 22:24:57 fmhess Exp
-Driver name: ni_pcimio
-Device name: pci-6033e
-Id: ni.c,v 1.104 2004/02/21 14:34:08 fmhess Exp
-Comedi version: 0.7.67
-ai, bipolar zero offset, low gain
-reading -9.899(50)e-3, target 0
-caldac[2] gain=4.05815(66)e-4 V/bit S_min=160.14 dof=14
-caldac[3] gain=3.980(65)e-6 V/bit S_min=1.32374 dof=14
-caldac[8] gain=5.215(41)e-7 V/bit S_min=9.43182 dof=14
-ai, bipolar zero offset, high gain
-reading 9.819(23)e-5, target 0
-caldac[2] gain=4.0585(29)e-6 V/bit S_min=3.7347 dof=14
-caldac[3] gain=4.00(30)e-8 V/bit S_min=0.937716 dof=14
-caldac[8] gain=5.1188(18)e-7 V/bit S_min=6.92651 dof=14
-ai, bipolar voltage reference, low gain
-reading 4.9894975(49), target 5
-caldac[0] gain=-4.5577(67)e-5 V/bit S_min=22.9715 dof=14
-caldac[1] gain=-2.492(68)e-6 V/bit S_min=0.991261 dof=14
-caldac[2] gain=4.05245(67)e-4 V/bit S_min=92.0068 dof=14
-caldac[3] gain=3.986(68)e-6 V/bit S_min=2.25732 dof=14
-caldac[8] gain=5.240(42)e-7 V/bit S_min=8.35406 dof=14
-ai, unipolar zero offset, low gain
-reading nan, target 7.62951e-05
-caldac[2] gain=4.0619(11)e-4 V/bit S_min=32.5208 dof=4
-ai, unipolar zero offset, high gain
-reading 9.631(21)e-5, target 7.62951e-07
-caldac[2] gain=4.0549(50)e-6 V/bit S_min=7.65813 dof=7
-caldac[3] gain=4.04(29)e-8 V/bit S_min=1.10986 dof=14
-caldac[8] gain=5.1133(36)e-7 V/bit S_min=1.48799 dof=6
-ai, unipolar voltage reference, low gain
-reading 4.9892792(34), target 5
-caldac[0] gain=-4.5533(44)e-5 V/bit S_min=18.6982 dof=14
-caldac[1] gain=-2.498(44)e-6 V/bit S_min=1.28035 dof=14
-caldac[2] gain=4.05390(44)e-4 V/bit S_min=183.052 dof=14
-caldac[3] gain=3.918(44)e-6 V/bit S_min=1.27415 dof=14
-caldac[8] gain=5.148(28)e-7 V/bit S_min=3.90862 dof=14
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage
-reference, low gain
-caldac[0] set to 131
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset,
-high gain
-caldac[2] set to 153
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset,
-high gain
-caldac[3] set to 201
-binary: ai, bipolar zero offset, high gain
-caldac[8] set to 1647
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage
-reference, low gain
-caldac[1] set to 88
-binary peg: ai, unipolar zero offset, low gain
-caldac[8] set to 0
-binary peg: ai, unipolar zero offset, low gain
-caldac[2] set to 255
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar voltage
-reference, low gain
-caldac[0] set to 130
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar zero offset,
-high gain
-caldac[2] set to 156
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar zero offset,
-high gain
-caldac[3] set to 175
-binary: ai, unipolar zero offset, high gain
-caldac[8] set to 1617
-relative binary: ai, unipolar zero offset, low gain, ai, unipolar voltage
-reference, low gain
-caldac[1] set to 127
-writing calibration to ./ni_pcimio_pci-6033e_comedi0
-ai, bipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 0, aref 3
-reading 4.29(81)e-5, target 0
-caldac[2] gain=4.05675(65)e-4 V/bit S_min=152.289 dof=14
-caldac[3] gain=3.861(65)e-6 V/bit S_min=1.57508 dof=14
-caldac[8] gain=5.128(41)e-7 V/bit S_min=1.59219 dof=14
-ai, bipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 6, aref 3
-reading 1.02(25)e-6, target 0
-caldac[2] gain=4.0554(30)e-6 V/bit S_min=7.41243 dof=14
-caldac[3] gain=3.98(30)e-8 V/bit S_min=1.81005 dof=14
-caldac[8] gain=5.1188(18)e-7 V/bit S_min=4.95673 dof=14
-ai, bipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 0, aref 3
-reading 4.9999660(72), target 5
-caldac[0] gain=-4.5825(67)e-5 V/bit S_min=36.1478 dof=14
-caldac[1] gain=-2.774(72)e-6 V/bit S_min=0.879831 dof=14
-caldac[2] gain=4.05129(67)e-4 V/bit S_min=102.117 dof=14
-caldac[3] gain=3.933(67)e-6 V/bit S_min=2.60807 dof=14
-caldac[8] gain=5.125(42)e-7 V/bit S_min=4.66901 dof=14
-ai, unipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 7, aref 3
-reading 9.042(33)e-4, target 7.62951e-05
-caldac[2] gain=1.24217(16)e-4 V/bit S_min=3.21485e+07 dof=14
-caldac[3] gain=3.941(41)e-6 V/bit S_min=2.37018 dof=14
-caldac[8] gain=5.087(26)e-7 V/bit S_min=3.06702 dof=14
-ai, unipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 13, aref 3
-reading 9.54(78)e-7, target 7.62951e-07
-caldac[2] gain=1.1642(10)e-6 V/bit S_min=730218 dof=14
-caldac[3] gain=5.31(68)e-9 V/bit S_min=4.78958 dof=14
-caldac[8] gain=3.10170(98)e-7 V/bit S_min=1.58412e+06 dof=14
-ai, unipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 7, aref 3
-reading 5.0007925(32), target 5
-caldac[0] gain=-4.5870(44)e-5 V/bit S_min=34.7342 dof=14
-caldac[1] gain=-2.533(44)e-6 V/bit S_min=1.01379 dof=14
-caldac[2] gain=4.05338(44)e-4 V/bit S_min=178.116 dof=14
-caldac[3] gain=3.945(44)e-6 V/bit S_min=1.46842 dof=14
-caldac[8] gain=5.131(28)e-7 V/bit S_min=5.89766 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
-
diff --git a/comedi_calibrate/results/pci-6034e b/comedi_calibrate/results/pci-6034e
deleted file mode 100644 (file)
index e8bc82a..0000000
+++ /dev/null
@@ -1,67 +0,0 @@
-# ./comedi_calibrate 
-eeprom reference lsb=99 msb=2 
-resulting reference voltage: 5.00061 
-Warning: device may not be not fully calibrated due to insufficient 
-information. 
-Please file a bug report at https://bugs.comedi.org/ and attach this output. 
-This output will also allow comedi_calibrate to execute more 
-quickly in the future. 
-Forcing option: --verbose 
-Forcing options: --reset --dump --calibrate --results 
-Id: comedi_calibrate.c,v 1.92 2004/03/29 01:34:15 fmhess Exp 
-Driver name: ni_pcimio 
-Device name: pci-6034e 
-Id: ni.c,v 1.125 2004/06/29 01:21:23 fmhess Exp 
-Comedi version: 0.7.68 
-ai, bipolar zero offset, low gain 
-reading 0.0177338(84), target 0 
-caldac[0] gain=-5.604(12)e-5 V/bit S_min=2.37939 dof=14 
-caldac[2] gain=1.03(11)e-6 V/bit S_min=1.00597 dof=14 
-caldac[4] gain=-6.2232(12)e-4 V/bit S_min=128.859 dof=14 
-caldac[8] gain=-9.1(11)e-7 V/bit S_min=0.248826 dof=14 
-ai, bipolar zero offset, high gain 
-reading -2.6455(28)e-4, target 0 
-caldac[0] gain=-5.60079(39)e-5 V/bit S_min=143.741 dof=14 
-caldac[2] gain=-1.89(38)e-8 V/bit S_min=2.81621 dof=14 
-caldac[4] gain=-3.1188(38)e-6 V/bit S_min=5.00198 dof=14 
-caldac[8] gain=-9.618(38)e-7 V/bit S_min=5.27821 dof=14 
-ai, bipolar voltage reference, low gain 
-reading 5.0047309(84), target 5.00061 
-caldac[0] gain=-5.399(11)e-5 V/bit S_min=57.7834 dof=14 
-caldac[2] gain=3.5241(12)e-4 V/bit S_min=375.818 dof=14 
-caldac[4] gain=-6.2217(12)e-4 V/bit S_min=161.084 dof=14 
-caldac[8] gain=-9.4(11)e-7 V/bit S_min=0.518899 dof=14 
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage 
-reference, low gain 
-caldac[2] set to 165 
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset, 
-high gain 
-caldac[4] set to 157 
-binary: ai, bipolar zero offset, high gain 
-caldac[0] set to 121 
-binary: ai, bipolar zero offset, high gain 
-caldac[8] set to 107 
-writing calibration to /usr/local/var/lib/comedi/calibrations/
-ni_pcimio_pci-6034e_comedi0 
-ai, bipolar zero offset, low gain 
-applied calibration for subdev 0, channel 0, range 0, aref 3 
-reading -1.547(83)e-4, target 0 
-caldac[0] gain=-5.470(11)e-5 V/bit S_min=40.9513 dof=14 
-caldac[4] gain=-6.2404(12)e-4 V/bit S_min=147.172 dof=14 
-caldac[8] gain=-1.08(11)e-6 V/bit S_min=1.31863 dof=14 
-ai, bipolar zero offset, high gain 
-applied calibration for subdev 0, channel 0, range 3, aref 3 
-reading -1.68(26)e-6, target 0 
-caldac[0] gain=-5.61664(38)e-5 V/bit S_min=139.701 dof=14 
-caldac[4] gain=-3.1205(38)e-6 V/bit S_min=4.55186 dof=14 
-caldac[8] gain=-9.641(38)e-7 V/bit S_min=8.20823 dof=14 
-ai, bipolar voltage reference, low gain 
-applied calibration for subdev 0, channel 5, range 0, aref 3 
-reading 5.0000715(65), target 5.00061 
-caldac[0] gain=-5.337(11)e-5 V/bit S_min=49.5019 dof=14 
-caldac[2] gain=3.5116(12)e-4 V/bit S_min=204.112 dof=14 
-caldac[4] gain=-6.2385(12)e-4 V/bit S_min=154.119 dof=14 
-caldac[8] gain=-7.71(87)e-7 V/bit S_min=2.13942 dof=14 
-Applied calibration for subdevice 0, channel 0, range 0, aref 0 
\ No newline at end of file
diff --git a/comedi_calibrate/results/pci-6035e b/comedi_calibrate/results/pci-6035e
deleted file mode 100644 (file)
index 1d17795..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-Id: comedi_calibrate.c,v 1.24 2002/01/22 09:32:28 ds Exp 
-Driver name: ni_pcimio
-Device name: pci-6035e
-Comedi version: 0.7.64
-ai, bipolar zero offset, low gain
-offset 0.012944(20), target 0
-caldac[0] gain=-1.1773(19)e-5 V/bit S_min=246.793 dof=254
-caldac[2] gain=6.82(19)e-7 V/bit S_min=280.234 dof=254
-caldac[4] gain=-6.26946(19)e-4 V/bit S_min=1333.03 dof=254
-caldac[8] gain=-2.25(19)e-7 V/bit S_min=221.558 dof=254
-ai, bipolar zero offset, high gain
-offset 2.5411(70)e-4, target 0
-caldac[0] gain=-1.184479(69)e-5 V/bit S_min=601.325 dof=254
-caldac[2] gain=1.662(65)e-8 V/bit S_min=304.058 dof=254
-caldac[4] gain=-3.13542(65)e-6 V/bit S_min=301.441 dof=254
-caldac[8] gain=-2.0310(65)e-7 V/bit S_min=311.733 dof=254
-ai, bipolar voltage reference, low gain
-offset 5.013244(23), target 5
-caldac[0] gain=-1.0718(19)e-5 V/bit S_min=236.177 dof=254
-caldac[2] gain=3.55645(20)e-4 V/bit S_min=5166.14 dof=254
-caldac[4] gain=-6.27555(18)e-4 V/bit S_min=984.255 dof=254
-caldac[8] gain=-2.12(19)e-7 V/bit S_min=244.898 dof=254
-(null)
-offset 1.166629(32), target 0
-caldac[0] gain=-3.05197(19)e-4 V/bit S_min=1540.12 dof=254
-caldac[1] gain=-2.88382(19)e-4 V/bit S_min=1918.35 dof=254
-caldac[2] gain=-2.21448(20)e-4 V/bit S_min=2179.26 dof=254
-caldac[3] gain=-2.80387(19)e-4 V/bit S_min=1242.74 dof=254
-caldac[4] gain=-9.05379(19)e-4 V/bit S_min=2022.73 dof=254
-caldac[5] gain=-2.76276(19)e-4 V/bit S_min=543.973 dof=254
-caldac[6] gain=-2.74266(19)e-4 V/bit S_min=1643.75 dof=254
-caldac[7] gain=-2.71670(19)e-4 V/bit S_min=806.479 dof=254
-caldac[8] gain=-2.70225(19)e-4 V/bit S_min=1625.86 dof=254
-caldac[9] gain=-2.75665(19)e-4 V/bit S_min=958.022 dof=254
-caldac[10] gain=-2.65147(19)e-4 V/bit S_min=1035.94 dof=254
-caldac[11] gain=-2.62072(19)e-4 V/bit S_min=471.963 dof=254
-caldac[12] gain=-2.62643(19)e-4 V/bit S_min=460.769 dof=254
-caldac[13] gain=-2.61439(19)e-4 V/bit S_min=523.447 dof=254
-caldac[14] gain=-2.59518(19)e-4 V/bit S_min=926.967 dof=254
-caldac[15] gain=-2.58381(19)e-4 V/bit S_min=741.307 dof=254
-ao 0, zero offset, low gain
-offset 0.0254(43), target 0.002442
-caldac[0] gain=-1.1808(21)e-5 V/bit S_min=437.561 dof=254
-caldac[2] gain=9.98(21)e-7 V/bit S_min=395.402 dof=254
-caldac[3] gain=-1.04(21)e-7 V/bit S_min=423.777 dof=254
-caldac[4] gain=-6.27008(21)e-4 V/bit S_min=1304.09 dof=254
-caldac[6] gain=-7.67443(21)e-4 V/bit S_min=1688.85 dof=254
-caldac[8] gain=-1.97(21)e-7 V/bit S_min=452.037 dof=254
-caldac[10] gain=-1.14847(21)e-4 V/bit S_min=552.752 dof=254
-ao 0, reference voltage, low gain
-offset -0.019(16), target -0.001221
-caldac[0] gain=-1.2935(19)e-5 V/bit S_min=284.678 dof=254
-caldac[2] gain=7.40(19)e-7 V/bit S_min=306.839 dof=254
-caldac[4] gain=-6.26991(19)e-4 V/bit S_min=1444.62 dof=254
-caldac[6] gain=-7.67471(19)e-4 V/bit S_min=2158.97 dof=254
-caldac[8] gain=-2.24(19)e-7 V/bit S_min=315.045 dof=254
-caldac[10] gain=-1.38932(19)e-4 V/bit S_min=897.617 dof=254
-caldac[11] gain=-1.62528(19)e-4 V/bit S_min=1635.75 dof=254
-ao 1, zero offset, low gain
-offset 0.0409(87), target 0.002442
-caldac[0] gain=-1.1885(21)e-5 V/bit S_min=432.721 dof=254
-caldac[1] gain=-1.15638(21)e-4 V/bit S_min=468.52 dof=254
-caldac[2] gain=1.375(21)e-6 V/bit S_min=391.178 dof=254
-caldac[4] gain=-6.27116(21)e-4 V/bit S_min=1688.27 dof=254
-caldac[5] gain=-1.00(21)e-7 V/bit S_min=372.132 dof=254
-caldac[8] gain=-2.08(21)e-7 V/bit S_min=357.898 dof=254
-caldac[9] gain=-7.74251(21)e-4 V/bit S_min=2375.82 dof=254
-ao 1, reference voltage, low gain
-offset -0.022(21), target -0.001221
-caldac[0] gain=-1.3099(19)e-5 V/bit S_min=495.56 dof=254
-caldac[1] gain=-1.40322(19)e-4 V/bit S_min=509.569 dof=254
-caldac[2] gain=1.189(19)e-6 V/bit S_min=358.879 dof=254
-caldac[4] gain=-6.27038(19)e-4 V/bit S_min=1972.7 dof=254
-caldac[5] gain=-1.62366(19)e-4 V/bit S_min=641.86 dof=254
-caldac[8] gain=-2.49(18)e-7 V/bit S_min=318.45 dof=254
-caldac[9] gain=-7.74293(19)e-4 V/bit S_min=3056.43 dof=254
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, high gain
-caldac[4] gain=-6.26974(18)e-4 V/bit S_min=1491.78 dof=254
-caldac[4] gain=-3.13259(65)e-6 V/bit S_min=375.767 dof=254
-caldac[4] set to 148 (147.509)
-linear: ai, bipolar zero offset, high gain
-caldac[0] gain=-1.184463(70)e-5 V/bit S_min=623.898 dof=254
-caldac[0] set to 143 (143.459)
-linear: ai, bipolar zero offset, high gain
-caldac[8] gain=-2.0233(63)e-7 V/bit S_min=278.768 dof=254
-caldac[8] set to 127 (126.893)
-linear: ai, bipolar voltage reference, low gain
-caldac[2] gain=3.54822(20)e-4 V/bit S_min=7147.7 dof=254
-caldac[2] set to 127 (126.676)
-linear: ao 0, zero offset, low gain
-caldac[6] gain=-7.67358(22)e-4 V/bit S_min=1762.56 dof=254
-caldac[6] set to 129 (128.586)
-linear: ao 0, reference voltage, low gain
-caldac[10] gain=-1.38635(19)e-4 V/bit S_min=948.436 dof=254
-caldac[10] set to 123 (122.902)
-linear: ao 1, zero offset, low gain
-caldac[9] gain=-7.74296(22)e-4 V/bit S_min=2695.12 dof=254
-caldac[9] set to 137 (136.9)
-linear: ao 1, reference voltage, low gain
-caldac[5] gain=-1.61913(19)e-4 V/bit S_min=1017.68 dof=254
-caldac[5] set to 129 (128.911)
-ai, bipolar zero offset, low gain
-offset -2.15(21)e-4, target 0
-caldac[0] gain=-1.1406(18)e-5 V/bit S_min=479.25 dof=254
-caldac[2] gain=-2.50(18)e-7 V/bit S_min=373.303 dof=254
-caldac[4] gain=-6.26953(19)e-4 V/bit S_min=1496.25 dof=254
-caldac[8] gain=-2.47(18)e-7 V/bit S_min=306.357 dof=254
-ai, bipolar zero offset, high gain
-offset -6.4(74)e-7, target 0
-caldac[0] gain=-1.184355(69)e-5 V/bit S_min=654.56 dof=254
-caldac[3] gain=-3.38(62)e-9 V/bit S_min=301.57 dof=254
-caldac[4] gain=-3.13813(65)e-6 V/bit S_min=295.552 dof=254
-caldac[8] gain=-2.0119(64)e-7 V/bit S_min=294.204 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.999917(18), target 5
-caldac[0] gain=-1.0844(18)e-5 V/bit S_min=451.029 dof=254
-caldac[2] gain=3.54823(20)e-4 V/bit S_min=7266.78 dof=254
-caldac[4] gain=-6.27499(19)e-4 V/bit S_min=1207.03 dof=254
-caldac[8] gain=-1.92(16)e-7 V/bit S_min=345.501 dof=254
-(null)
-offset 0.541593(34), target 0
-caldac[0] gain=-3.03815(20)e-4 V/bit S_min=3477.6 dof=254
-caldac[1] gain=-2.85114(19)e-4 V/bit S_min=2032.95 dof=254
-caldac[2] gain=-2.61627(19)e-4 V/bit S_min=3822.49 dof=254
-caldac[3] gain=-2.76546(19)e-4 V/bit S_min=2478.34 dof=254
-caldac[4] gain=-9.00437(19)e-4 V/bit S_min=2015.46 dof=254
-caldac[5] gain=-2.71999(19)e-4 V/bit S_min=583.705 dof=254
-caldac[6] gain=-2.69269(19)e-4 V/bit S_min=732.442 dof=254
-caldac[7] gain=-2.66634(19)e-4 V/bit S_min=1146.44 dof=254
-caldac[8] gain=-2.64839(19)e-4 V/bit S_min=673.634 dof=254
-caldac[9] gain=-2.71481(19)e-4 V/bit S_min=618.958 dof=254
-caldac[10] gain=-2.61882(19)e-4 V/bit S_min=940.154 dof=254
-caldac[11] gain=-2.58067(19)e-4 V/bit S_min=1054.56 dof=254
-caldac[12] gain=-2.58500(19)e-4 V/bit S_min=599.639 dof=254
-caldac[13] gain=-2.57496(19)e-4 V/bit S_min=561.894 dof=254
-caldac[14] gain=-2.56407(19)e-4 V/bit S_min=910.663 dof=254
-caldac[15] gain=-2.54749(19)e-4 V/bit S_min=822.292 dof=254
-ao 0, zero offset, low gain
-offset 0.045(21), target 0.002442
-caldac[0] gain=-1.1813(21)e-5 V/bit S_min=391.49 dof=254
-caldac[4] gain=-6.26968(21)e-4 V/bit S_min=1421.94 dof=254
-caldac[6] gain=-7.67348(21)e-4 V/bit S_min=1929.58 dof=254
-caldac[8] gain=-2.48(21)e-7 V/bit S_min=407.266 dof=254
-caldac[10] gain=-1.14315(21)e-4 V/bit S_min=940.183 dof=254
-ao 0, reference voltage, low gain
-offset -0.035(17), target -0.001221
-caldac[0] gain=-1.2796(18)e-5 V/bit S_min=564.449 dof=254
-caldac[2] gain=-2.93(19)e-7 V/bit S_min=314.757 dof=254
-caldac[4] gain=-6.26979(19)e-4 V/bit S_min=1509.36 dof=254
-caldac[6] gain=-7.67381(19)e-4 V/bit S_min=2229.62 dof=254
-caldac[8] gain=-1.82(19)e-7 V/bit S_min=304.739 dof=254
-caldac[10] gain=-1.38661(19)e-4 V/bit S_min=828.214 dof=254
-caldac[11] gain=-1.62335(18)e-4 V/bit S_min=1015.51 dof=254
-ao 1, zero offset, low gain
-offset 0.045(21), target 0.002442
-caldac[0] gain=-1.1763(21)e-5 V/bit S_min=459.485 dof=254
-caldac[1] gain=-1.15012(21)e-4 V/bit S_min=940.128 dof=254
-caldac[4] gain=-6.26916(21)e-4 V/bit S_min=1312.2 dof=254
-caldac[5] gain=-1.15(21)e-7 V/bit S_min=415.043 dof=254
-caldac[8] gain=-2.25(21)e-7 V/bit S_min=443.539 dof=254
-caldac[9] gain=-7.74128(22)e-4 V/bit S_min=2684.38 dof=254
-ao 1, reference voltage, low gain
-offset -0.037(18), target -0.001221
-caldac[0] gain=-1.2791(18)e-5 V/bit S_min=534.573 dof=254
-caldac[1] gain=-1.39697(19)e-4 V/bit S_min=727.324 dof=254
-caldac[2] gain=-3.11(19)e-7 V/bit S_min=377.948 dof=254
-caldac[4] gain=-6.26942(19)e-4 V/bit S_min=1490.46 dof=254
-caldac[5] gain=-1.61913(19)e-4 V/bit S_min=983.618 dof=254
-caldac[8] gain=-1.86(19)e-7 V/bit S_min=389.475 dof=254
-caldac[9] gain=-7.74185(19)e-4 V/bit S_min=3267.41 dof=254
diff --git a/comedi_calibrate/results/pci-6036e b/comedi_calibrate/results/pci-6036e
deleted file mode 100644 (file)
index 977eb31..0000000
+++ /dev/null
@@ -1,112 +0,0 @@
-WARNING: unknown eeprom address for reference voltage
-correction.  This might be fixable if you send us an eeprom dump
-(see the demo/eeprom_dump program).
-Warning: device may not be not fully calibrated due to insufficient
-information.
-Please file a bug report at http://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Id: comedi_calibrate.c,v 1.87 2003/07/01 21:01:31 fmhess Exp
-Driver name: ni_pcimio
-Device name: pci-6036e
-Id: ni.c,v 1.85 2003/07/01 21:14:15 fmhess Exp
-Comedi version: 0.7.66
-ai, bipolar zero offset, low gain
-reading -0.0155833(77), target 0
-caldac[0] gain=-1.187(11)e-5 V/bit S_min=2.14599 dof=14
-caldac[2] gain=-1.49(11)e-6 V/bit S_min=14.6051 dof=14
-caldac[4] gain=-6.1284(11)e-4 V/bit S_min=130.523 dof=14
-ai, bipolar zero offset, high gain
-reading -2.5866(28)e-4, target 0
-caldac[0] gain=-1.18032(38)e-5 V/bit S_min=14.2385 dof=14
-caldac[2] gain=-1.75(37)e-8 V/bit S_min=8.4881 dof=14
-caldac[4] gain=-3.0701(37)e-6 V/bit S_min=5.53302 dof=14
-caldac[8] gain=-1.969(37)e-7 V/bit S_min=4.66928 dof=14
-ai, bipolar voltage reference, low gain
-reading 4.9782207(81), target 5
-caldac[0] gain=-1.091(11)e-5 V/bit S_min=66.7788 dof=14
-caldac[2] gain=3.5380(11)e-4 V/bit S_min=249.534 dof=14
-caldac[4] gain=-6.1285(11)e-4 V/bit S_min=166.483 dof=14
-ao 0, zero offset, low gain
-reading -0.0158572(76), target 0.00015259
-caldac[0] gain=-1.202(11)e-5 V/bit S_min=51.2631 dof=14
-caldac[2] gain=-1.35(11)e-6 V/bit S_min=24.7176 dof=14
-caldac[4] gain=-6.1317(11)e-4 V/bit S_min=99.9489 dof=14
-caldac[6] gain=-4.258(11)e-5 V/bit S_min=55.6732 dof=14
-caldac[10] gain=6.028(11)e-5 V/bit S_min=68.288 dof=14
-ao 0, reference voltage, low gain
-reading 4.9794382(78), target 4.99992
-caldac[0] gain=-1.203(11)e-5 V/bit S_min=53.5029 dof=14
-caldac[2] gain=3.5370(11)e-4 V/bit S_min=260.301 dof=14
-caldac[4] gain=-6.1302(11)e-4 V/bit S_min=145.567 dof=14
-caldac[6] gain=-4.384(11)e-5 V/bit S_min=1.15896 dof=14
-caldac[7] gain=-1.9531(11)e-4 V/bit S_min=29.9515 dof=14
-caldac[10] gain=7.146(11)e-5 V/bit S_min=100.067 dof=14
-caldac[11] gain=-7.67(11)e-6 V/bit S_min=0.861428 dof=14
-ao 0, linearity (negative), low gain
-reading -5.0114395(80), target -4.99992
-caldac[0] gain=-1.192(11)e-5 V/bit S_min=47.6917 dof=14
-caldac[2] gain=-3.5650(11)e-4 V/bit S_min=481.591 dof=14
-caldac[4] gain=-6.1301(11)e-4 V/bit S_min=128.665 dof=14
-caldac[6] gain=-4.170(11)e-5 V/bit S_min=30.3458 dof=14
-caldac[7] gain=1.9508(11)e-4 V/bit S_min=51.6126 dof=14
-caldac[10] gain=5.078(11)e-5 V/bit S_min=58.5712 dof=14
-caldac[11] gain=7.75(11)e-6 V/bit S_min=70.2642 dof=14
-ao 1, zero offset, low gain
-reading -0.0157752(80), target 0.00015259
-caldac[0] gain=-1.186(11)e-5 V/bit S_min=1.71163 dof=14
-caldac[1] gain=5.984(11)e-5 V/bit S_min=43.908 dof=14
-caldac[2] gain=-1.45(11)e-6 V/bit S_min=68.9319 dof=14
-caldac[4] gain=-6.1309(11)e-4 V/bit S_min=160.922 dof=14
-caldac[9] gain=-4.180(11)e-5 V/bit S_min=76.7112 dof=14
-ao 1, reference voltage, low gain
-reading 4.9792591(77), target 4.99992
-caldac[0] gain=-1.208(11)e-5 V/bit S_min=64.0151 dof=14
-caldac[1] gain=7.113(11)e-5 V/bit S_min=4.15399 dof=14
-caldac[2] gain=3.5379(11)e-4 V/bit S_min=182.481 dof=14
-caldac[3] gain=-1.9491(11)e-4 V/bit S_min=51.3479 dof=14
-caldac[4] gain=-6.1315(11)e-4 V/bit S_min=127.362 dof=14
-caldac[5] gain=-7.66(11)e-6 V/bit S_min=23.1643 dof=14
-caldac[9] gain=-4.290(11)e-5 V/bit S_min=83.248 dof=14
-ao 1, linearity (negative), low gain
-reading -5.0111164(77), target -4.99992
-caldac[0] gain=-1.200(11)e-5 V/bit S_min=74.5937 dof=14
-caldac[1] gain=5.024(11)e-5 V/bit S_min=2.12624 dof=14
-caldac[2] gain=-3.5640(11)e-4 V/bit S_min=566.307 dof=14
-caldac[3] gain=1.9454(11)e-4 V/bit S_min=34.8615 dof=14
-caldac[4] gain=-6.1290(11)e-4 V/bit S_min=118.395 dof=14
-caldac[5] gain=7.87(11)e-6 V/bit S_min=35.68 dof=14
-caldac[9] gain=-4.084(11)e-5 V/bit S_min=51.3942 dof=14
-WARNING: you need comedi driver version 0.7.67 or later
-for this calibration to work properly
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage
-reference, low gain
-caldac[2] set to 144
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero
-offset, high gain
-caldac[4] set to 101
-binary: ai, bipolar zero offset, high gain
-caldac[0] set to 111
-binary: ai, bipolar zero offset, high gain
-caldac[8] set to 176
-linearity binary: ao 0, linearity (negative), low gain,
-ao 0, zero offset, low gain,
-ao 0, reference voltage, low gain
-caldac[10] set to 131
-binary: ao 0, zero offset, low gain
-caldac[6] set to 133
-binary: ao 0, reference voltage, low gain
-caldac[7] set to 135
-binary: ao 0, reference voltage, low gain
-caldac[11] set to 137
-linearity binary: ao 1, linearity (negative), low gain,
-ao 1, zero offset, low gain,
-ao 1, reference voltage, low gain
-caldac[1] set to 47
-binary: ao 1, zero offset, low gain
-caldac[9] set to 15
-binary: ao 1, reference voltage, low gain
-caldac[3] set to 130
-binary: ao 1, reference voltage, low gain
-caldac[5] set to 127
-
diff --git a/comedi_calibrate/results/pci-6052e b/comedi_calibrate/results/pci-6052e
deleted file mode 100644 (file)
index 783db5d..0000000
+++ /dev/null
@@ -1,437 +0,0 @@
-
-eeprom reference lsb=203 msb=253 
-resulting reference voltage: 4.99944 
-Warning: device may not be not fully calibrated due to insufficient 
-information. 
-Please file a bug report at http://bugs.comedi.org/ and attach this output. 
-This output will also allow comedi_calibrate to execute more 
-quickly in the future. 
-Id: comedi_calibrate.c,v 1.87 2003/07/01 21:01:31 fmhess Exp 
-Driver name: ni_pcimio 
-Device name: pci-6052e 
-Id: ni.c,v 1.90 2003/07/10 22:07:12 fmhess Exp 
-Comedi version: 0.7.66 
-ai, bipolar zero offset, low gain 
-reading -8.6103(87)e-3, target 0 
-caldac[0] gain=-8.13(12)e-6 V/bit S_min=1.10763 dof=14 
-caldac[2] gain=1.50795(12)e-3 V/bit S_min=226.973 dof=14 
-caldac[3] gain=3.013(12)e-5 V/bit S_min=4.1594 dof=14 
-caldac[4] gain=-8.9(12)e-7 V/bit S_min=0.475217 dof=14 
-ai, bipolar zero offset, high gain 
-reading 3.1125(20)e-4, target 0 
-caldac[0] gain=-8.2227(27)e-6 V/bit S_min=19.1631 dof=14 
-caldac[1] gain=1.614(27)e-7 V/bit S_min=1.43933 dof=14 
-caldac[2] gain=7.5372(27)e-6 V/bit S_min=9.0941 dof=14 
-caldac[3] gain=1.476(27)e-7 V/bit S_min=2.86933 dof=14 
-caldac[4] gain=2.40(27)e-8 V/bit S_min=1.12883 dof=14 
-ai, bipolar voltage reference, low gain 
-reading 4.9825690(84), target 4.99944 
-caldac[0] gain=-8.29(12)e-6 V/bit S_min=1.28818 dof=14 
-caldac[2] gain=1.50783(12)e-3 V/bit S_min=220.665 dof=14 
-caldac[3] gain=3.012(12)e-5 V/bit S_min=4.04188 dof=14 
-caldac[4] gain=3.8675(12)e-4 V/bit S_min=257.558 dof=14 
-caldac[5] gain=7.72(12)e-6 V/bit S_min=3.22003 dof=14 
-ai, unipolar zero offset, low gain 
-reading 0.0220409(89), target 0.00015259 
-caldac[0] gain=-8.36(12)e-6 V/bit S_min=3.22306 dof=14 
-caldac[2] gain=8.19784(60)e-4 V/bit S_min=3.90722e+07 dof=14
-caldac[3] gain=3.008(12)e-5 V/bit S_min=7.22733 dof=14
-caldac[4] gain=-5.42176(75)e-4 V/bit S_min=5.06649e+06 dof=14 
-caldac[5] gain=-1.529(12)e-5 V/bit S_min=3.55384 dof=14 
-caldac[6] gain=-3.26094(91)e-4 V/bit S_min=464330 dof=14 
-caldac[7] gain=3.71(12)e-6 V/bit S_min=1.01406 dof=14 
-ai, unipolar zero offset, high gain 
-reading 4.6510(20)e-4, target 7.62951e-07 
-caldac[0] gain=-6.9388(20)e-6 V/bit S_min=423542 dof=14 
-caldac[1] gain=1.588(27)e-7 V/bit S_min=3.08774 dof=14 
-caldac[2] gain=6.0450(19)e-6 V/bit S_min=541400 dof=14 
-caldac[3] gain=1.513(28)e-7 V/bit S_min=1.15612 dof=14 
-caldac[4] gain=-3.8445(27)e-6 V/bit S_min=54.6946 dof=14 
-caldac[5] gain=-7.68(27)e-8 V/bit S_min=1.78679 dof=14 
-caldac[6] gain=-1.9324(27)e-6 V/bit S_min=1.2218 dof=14 
-caldac[7] gain=2.03(27)e-8 V/bit S_min=1.92719 dof=14 
-ai, unipolar voltage reference, low gain 
-reading 5.0130924(92), target 4.99944 
-caldac[0] gain=-8.05(12)e-6 V/bit S_min=1.9898 dof=14 
-caldac[2] gain=1.50788(12)e-3 V/bit S_min=220.21 dof=14 
-caldac[3] gain=2.993(12)e-5 V/bit S_min=6.34524 dof=14 
-caldac[4] gain=-3.8733(12)e-4 V/bit S_min=258.728 dof=14 
-caldac[5] gain=-7.53(12)e-6 V/bit S_min=1.04771 dof=14 
-caldac[6] gain=-3.8658(12)e-4 V/bit S_min=16.5887 dof=14 
-caldac[7] gain=3.64(12)e-6 V/bit S_min=1.5346 dof=14 
-ao 0, zero offset, low gain 
-reading -8.4914(88)e-3, target 0.00015259 
-caldac[0] gain=-8.04(12)e-6 V/bit S_min=1.05161 dof=14 
-caldac[2] gain=1.50792(12)e-3 V/bit S_min=234.949 dof=14 
-caldac[3] gain=3.003(12)e-5 V/bit S_min=4.99259 dof=14 
-caldac[4] gain=-8.4(12)e-7 V/bit S_min=1.09215 dof=14 
-caldac[16] gain=6.064(12)e-5 V/bit S_min=2.73403 dof=14 
-caldac[19] gain=-4.586(12)e-5 V/bit S_min=3.65995 dof=14 
-ao 0, reference voltage, low gain 
-reading 4.9838132(90), target 4.99992 
-caldac[0] gain=-8.13(12)e-6 V/bit S_min=2.45831 dof=14 
-caldac[2] gain=1.50787(12)e-3 V/bit S_min=237.066 dof=14 
-caldac[3] gain=3.002(12)e-5 V/bit S_min=4.96824 dof=14
-caldac[4] gain=3.8680(12)e-4 V/bit S_min=255.827 dof=14
-caldac[5] gain=7.74(12)e-6 V/bit S_min=1.11254 dof=14 
-caldac[16] gain=7.213(12)e-5 V/bit S_min=3.73664 dof=14 
-caldac[17] gain=-1.9497(12)e-4 V/bit S_min=12.4776 dof=14 
-caldac[18] gain=-7.63(12)e-6 V/bit S_min=1.97599 dof=14 
-caldac[19] gain=-4.686(12)e-5 V/bit S_min=3.2504 dof=14 
-ao 0, linearity (mid), low gain 
-reading 2.4874703(90), target 2.49989 
-caldac[0] gain=-8.29(12)e-6 V/bit S_min=2.74831 dof=14 
-caldac[2] gain=1.50841(12)e-3 V/bit S_min=244.14 dof=14 
-caldac[3] gain=2.995(12)e-5 V/bit S_min=4.32043 dof=14 
-caldac[4] gain=1.9326(12)e-4 V/bit S_min=134.919 dof=14 
-caldac[5] gain=3.94(12)e-6 V/bit S_min=1.41423 dof=14 
-caldac[16] gain=6.721(12)e-5 V/bit S_min=8.24503 dof=14 
-caldac[17] gain=-9.766(12)e-5 V/bit S_min=7.21631 dof=14 
-caldac[18] gain=-3.89(12)e-6 V/bit S_min=1.59114 dof=14 
-caldac[19] gain=-4.650(12)e-5 V/bit S_min=4.39519 dof=14 
-ao 1, zero offset, low gain 
-reading -8.6953(90)e-3, target 0.00015259 
-caldac[0] gain=-8.09(12)e-6 V/bit S_min=1.37919 dof=14 
-caldac[2] gain=1.50797(12)e-3 V/bit S_min=241.103 dof=14 
-caldac[3] gain=3.022(12)e-5 V/bit S_min=5.24172 dof=14 
-caldac[4] gain=-8.9(12)e-7 V/bit S_min=2.01481 dof=14 
-caldac[20] gain=6.055(12)e-5 V/bit S_min=4.21363 dof=14 
-caldac[23] gain=-4.587(12)e-5 V/bit S_min=3.79529 dof=14 
-ao 1, reference voltage, low gain 
-reading 4.9836296(88), target 4.99992 
-caldac[0] gain=-8.20(12)e-6 V/bit S_min=2.06166 dof=14 
-caldac[2] gain=1.50791(12)e-3 V/bit S_min=229.923 dof=14 
-caldac[3] gain=3.001(12)e-5 V/bit S_min=7.30177 dof=14 
-caldac[4] gain=3.8678(12)e-4 V/bit S_min=258.772 dof=14 
-caldac[5] gain=7.71(12)e-6 V/bit S_min=1.94527 dof=14 
-caldac[20] gain=7.199(12)e-5 V/bit S_min=4.86168 dof=14 
-caldac[21] gain=-1.9502(12)e-4 V/bit S_min=7.74002 dof=14 
-caldac[22] gain=-7.77(12)e-6 V/bit S_min=3.59955 dof=14 
-caldac[23] gain=-4.693(12)e-5 V/bit S_min=3.24831 dof=14 
-ao 1, linearity (mid), low gain
-reading 2.4872128(85), target 2.49989
-caldac[0] gain=-8.23(12)e-6 V/bit S_min=1.72052 dof=14 
-caldac[2] gain=1.50861(12)e-3 V/bit S_min=245.07 dof=14 
-caldac[3] gain=2.994(12)e-5 V/bit S_min=3.47886 dof=14 
-caldac[4] gain=1.9325(12)e-4 V/bit S_min=126.368 dof=14 
-caldac[5] gain=3.77(12)e-6 V/bit S_min=1.20793 dof=14 
-caldac[20] gain=6.715(12)e-5 V/bit S_min=5.2316 dof=14 
-caldac[21] gain=-9.753(12)e-5 V/bit S_min=6.69752 dof=14 
-caldac[22] gain=-3.83(12)e-6 V/bit S_min=0.961773 dof=14 
-caldac[23] gain=-4.655(12)e-5 V/bit S_min=4.43498 dof=14 
-ao 0, unipolar zero offset, low gain 
-reading -8.6896(88)e-3, target 0 
-caldac[0] gain=-8.11(12)e-6 V/bit S_min=1.26831 dof=14 
-caldac[2] gain=1.50791(12)e-3 V/bit S_min=242.062 dof=14 
-caldac[3] gain=3.014(12)e-5 V/bit S_min=4.71077 dof=14 
-caldac[4] gain=-8.7(12)e-7 V/bit S_min=0.604307 dof=14 
-caldac[16] gain=2.070(12)e-5 V/bit S_min=4.34329 dof=14 
-caldac[19] gain=-2.215(12)e-5 V/bit S_min=3.60894 dof=14 
-ao 0, unipolar high, low gain 
-reading 8.9778267(90), target 9.00008 
-caldac[0] gain=-8.09(12)e-6 V/bit S_min=1.67508 dof=14 
-caldac[2] gain=1.50765(12)e-3 V/bit S_min=224.212 dof=14 
-caldac[3] gain=3.001(12)e-5 V/bit S_min=3.71449 dof=14 
-caldac[4] gain=6.9664(12)e-4 V/bit S_min=941.979 dof=14 
-caldac[5] gain=1.375(12)e-5 V/bit S_min=4.06726 dof=14 
-caldac[16] gain=4.098(12)e-5 V/bit S_min=5.29771 dof=14 
-caldac[17] gain=-3.5098(12)e-4 V/bit S_min=25.8469 dof=14 
-caldac[18] gain=-1.392(12)e-5 V/bit S_min=1.73246 dof=14 
-caldac[19] gain=-2.388(12)e-5 V/bit S_min=1.65244 dof=14 
-ao 0, unipolar linearity (low), low gain 
-reading 0.9898539(85), target 1.00008 
-caldac[0] gain=-8.05(12)e-6 V/bit S_min=1.37316 dof=14 
-caldac[2] gain=1.50767(12)e-3 V/bit S_min=242.422 dof=14 
-caldac[3] gain=2.990(12)e-5 V/bit S_min=6.27182 dof=14 
-caldac[4] gain=7.654(12)e-5 V/bit S_min=18.4718 dof=14 
-caldac[5] gain=1.44(12)e-6 V/bit S_min=0.441547 dof=14 
-caldac[16] gain=2.535(12)e-5 V/bit S_min=1.81518 dof=14
-caldac[17] gain=-3.899(12)e-5 V/bit S_min=6.55846 dof=14
-caldac[18] gain=-1.49(12)e-6 V/bit S_min=1.07783 dof=14 
-caldac[19] gain=-2.232(12)e-5 V/bit S_min=1.99979 dof=14 
-ao 0, unipolar linearity (mid), low gain 
-reading 4.9837944(89), target 5.00008 
-caldac[0] gain=-8.14(12)e-6 V/bit S_min=1.23582 dof=14 
-caldac[2] gain=1.50795(12)e-3 V/bit S_min=233.814 dof=14 
-caldac[3] gain=2.998(12)e-5 V/bit S_min=3.78682 dof=14 
-caldac[4] gain=3.8683(12)e-4 V/bit S_min=245.128 dof=14 
-caldac[5] gain=7.66(12)e-6 V/bit S_min=1.33929 dof=14 
-caldac[16] gain=3.030(12)e-5 V/bit S_min=8.17521 dof=14 
-caldac[17] gain=-1.9499(12)e-4 V/bit S_min=14.5217 dof=14 
-caldac[18] gain=-7.63(12)e-6 V/bit S_min=1.66786 dof=14 
-caldac[19] gain=-2.282(12)e-5 V/bit S_min=2.42265 dof=14 
-ao 1, unipolar zero offset, low gain 
-reading -8.7447(85)e-3, target 0 
-caldac[0] gain=-8.11(12)e-6 V/bit S_min=1.23183 dof=14 
-caldac[2] gain=1.50784(12)e-3 V/bit S_min=230.705 dof=14 
-caldac[3] gain=3.012(12)e-5 V/bit S_min=4.03818 dof=14 
-caldac[4] gain=-8.9(12)e-7 V/bit S_min=0.999528 dof=14 
-caldac[20] gain=2.075(12)e-5 V/bit S_min=4.36654 dof=14 
-caldac[23] gain=-2.215(12)e-5 V/bit S_min=4.41373 dof=14 
-ao 1, unipolar high, low gain 
-reading 8.9778986(84), target 9.00008 
-caldac[0] gain=-8.11(12)e-6 V/bit S_min=1.65117 dof=14 
-caldac[2] gain=1.50764(12)e-3 V/bit S_min=227.905 dof=14 
-caldac[3] gain=2.995(12)e-5 V/bit S_min=3.74135 dof=14 
-caldac[4] gain=6.9672(12)e-4 V/bit S_min=951.859 dof=14 
-caldac[5] gain=1.381(12)e-5 V/bit S_min=2.06476 dof=14 
-caldac[20] gain=4.096(12)e-5 V/bit S_min=3.93353 dof=14 
-caldac[21] gain=-3.5097(12)e-4 V/bit S_min=45.246 dof=14 
-caldac[22] gain=-1.400(12)e-5 V/bit S_min=3.52023 dof=14 
-caldac[23] gain=-2.390(12)e-5 V/bit S_min=2.53243 dof=14 
-WARNING: you need comedi driver version 0.7.67 or later 
-for this calibration to work properly 
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage 
-reference, low gain
-caldac[4] set to 148
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset, 
-high gain 
-caldac[2] set to 133 
-binary: ai, bipolar zero offset, high gain 
-caldac[0] set to 170 
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage 
-reference, low gain 
-caldac[5] set to 154 
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset, 
-high gain 
-caldac[3] set to 129 
-binary: ai, bipolar zero offset, high gain 
-caldac[1] set to 103 
-binary: ai, unipolar zero offset, high gain 
-caldac[6] set to 165 
-linearity binary: ao 0, zero offset, low gain, 
-ao 0, linearity (mid), low gain, 
-ao 0, reference voltage, low gain 
-caldac[16] set to 125 
-binary: ao 0, zero offset, low gain 
-caldac[19] set to 127 
-binary: ao 0, reference voltage, low gain 
-caldac[17] set to 131 
-binary: ao 0, reference voltage, low gain 
-caldac[18] set to 116 
-linearity binary: ao 0, unipolar linearity (low), low gain, 
-ao 0, unipolar linearity (mid), low gain, 
-ao 0, unipolar high, low gain 
-caldac[16] set to 137 
-binary: ao 0, unipolar zero offset, low gain 
-caldac[19] set to 135 
-binary: ao 0, unipolar high, low gain 
-caldac[17] set to 131 
-binary: ao 0, unipolar high, low gain 
-caldac[18] set to 137 
-linearity binary: ao 1, zero offset, low gain,
-ao 1, linearity (mid), low gain,
-ao 1, reference voltage, low gain 
-caldac[20] set to 131 
-binary: ao 1, zero offset, low gain 
-caldac[23] set to 127 
-binary: ao 1, reference voltage, low gain 
-caldac[21] set to 131 
-binary: ao 1, reference voltage, low gain 
-caldac[22] set to 139 
-linearity binary: ao 1, unipolar linearity (low), low gain, 
-ao 1, unipolar linearity (mid), low gain, 
-ao 1, unipolar high, low gain 
-caldac[20] set to 144 
-binary: ao 1, unipolar zero offset, low gain 
-caldac[23] set to 137 
-binary: ao 1, unipolar high, low gain 
-caldac[21] set to 132 
-binary: ao 1, unipolar high, low gain 
-caldac[22] set to 131 
-writing calibration to /etc/comedi/calibrations/ni_pcimio_pci-6052e_comedi0 
-ai, bipolar zero offset, low gain 
-applied calibration for subdev 0, channel 0, range 0, aref 3 
-reading 1.22(79)e-5, target 0 
-caldac[0] gain=-8.24(11)e-6 V/bit S_min=12.8404 dof=14 
-caldac[2] gain=1.51035(12)e-3 V/bit S_min=226.945 dof=14 
-caldac[3] gain=3.008(12)e-5 V/bit S_min=5.89065 dof=14 
-ai, bipolar zero offset, high gain 
-applied calibration for subdev 0, channel 0, range 7, aref 3 
-reading -1.06(20)e-6, target 0 
-caldac[0] gain=-8.2351(27)e-6 V/bit S_min=19.9015 dof=14 
-caldac[1] gain=1.625(27)e-7 V/bit S_min=2.15817 dof=14 
-caldac[2] gain=7.5520(27)e-6 V/bit S_min=9.26061 dof=14 
-caldac[3] gain=1.520(27)e-7 V/bit S_min=2.1878 dof=14 
-ai, bipolar voltage reference, low gain 
-applied calibration for subdev 0, channel 5, range 0, aref 3 
-reading 4.9994293(85), target 4.99944 
-caldac[0] gain=-8.72(12)e-6 V/bit S_min=7.71306 dof=14
-caldac[2] gain=1.51047(12)e-3 V/bit S_min=215.361 dof=14
-caldac[3] gain=3.030(12)e-5 V/bit S_min=8.18281 dof=14 
-caldac[4] gain=3.8728(12)e-4 V/bit S_min=254.015 dof=14 
-caldac[5] gain=7.80(12)e-6 V/bit S_min=5.4533 dof=14 
-ai, unipolar zero offset, low gain 
-applied calibration for subdev 0, channel 0, range 8, aref 3 
-reading 8.9(52)e-7, target 0.00015259 
-caldac[0] gain=-2.802(52)e-6 V/bit S_min=946.33 dof=14 
-caldac[2] gain=6.35785(53)e-4 V/bit S_min=4.77224e+07 dof=14 
-caldac[3] gain=9.576(47)e-6 V/bit S_min=20530.2 dof=14 
-caldac[4] gain=-5.06446(75)e-4 V/bit S_min=5.71793e+06 dof=14 
-caldac[5] gain=-6.820(59)e-6 V/bit S_min=3676.37 dof=14 
-caldac[6] gain=-2.87876(83)e-4 V/bit S_min=953397 dof=14 
-caldac[7] gain=7.22(95)e-8 V/bit S_min=42.5648 dof=14 
-ai, unipolar zero offset, high gain 
-applied calibration for subdev 0, channel 0, range 15, aref 3 
-reading 1.162(80)e-6, target 7.62951e-07 
-caldac[0] gain=-6.4027(19)e-6 V/bit S_min=745553 dof=14 
-caldac[1] gain=7.60(14)e-8 V/bit S_min=482.356 dof=14 
-caldac[2] gain=3.1809(12)e-6 V/bit S_min=2.32324e+06 dof=14 
-caldac[3] gain=5.31(12)e-8 V/bit S_min=533.002 dof=14 
-caldac[4] gain=-2.5341(17)e-6 V/bit S_min=276594 dof=14 
-caldac[5] gain=-3.73(15)e-8 V/bit S_min=43.6554 dof=14 
-caldac[6] gain=-1.4421(18)e-6 V/bit S_min=47751.5 dof=14 
-caldac[7] gain=5.2(11)e-9 V/bit S_min=0.674043 dof=14 
-ai, unipolar voltage reference, low gain 
-applied calibration for subdev 0, channel 5, range 8, aref 3 
-reading 4.9986949(88), target 4.99944 
-caldac[0] gain=-8.73(12)e-6 V/bit S_min=13.4219 dof=14 
-caldac[2] gain=1.51031(12)e-3 V/bit S_min=218.593 dof=14 
-caldac[3] gain=3.020(12)e-5 V/bit S_min=8.37635 dof=14 
-caldac[4] gain=-3.8770(12)e-4 V/bit S_min=273.581 dof=14 
-caldac[5] gain=-8.06(12)e-6 V/bit S_min=13.2996 dof=14 
-caldac[6] gain=-3.8724(12)e-4 V/bit S_min=11.7055 dof=14 
-caldac[7] gain=3.61(12)e-6 V/bit S_min=0.733005 dof=14 
-ao 0, zero offset, low gain 
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 6.56(80)e-5, target 0.00015259 
-caldac[0] gain=-8.28(12)e-6 V/bit S_min=11.8596 dof=14 
-caldac[2] gain=1.51033(12)e-3 V/bit S_min=208.618 dof=14 
-caldac[3] gain=3.012(12)e-5 V/bit S_min=6.60325 dof=14 
-caldac[16] gain=6.046(12)e-5 V/bit S_min=7.63731 dof=14 
-caldac[19] gain=-4.573(12)e-5 V/bit S_min=7.39965 dof=14 
-ao 0, reference voltage, low gain 
-applied calibration for subdev 1, channel 0, range 0, aref 0 
-applied calibration for subdev 0, channel 2, range 0, aref 3 
-reading 4.9998498(87), target 4.99992 
-caldac[0] gain=-8.65(12)e-6 V/bit S_min=8.16191 dof=14 
-caldac[2] gain=1.51059(12)e-3 V/bit S_min=196.756 dof=14 
-caldac[3] gain=3.033(12)e-5 V/bit S_min=10.1251 dof=14 
-caldac[4] gain=3.8725(12)e-4 V/bit S_min=228.889 dof=14 
-caldac[5] gain=8.03(12)e-6 V/bit S_min=8.23961 dof=14 
-caldac[16] gain=7.216(12)e-5 V/bit S_min=7.97625 dof=14 
-caldac[17] gain=-1.9545(12)e-4 V/bit S_min=12.2067 dof=14 
-caldac[18] gain=-7.94(12)e-6 V/bit S_min=12.4849 dof=14 
-caldac[19] gain=-4.708(12)e-5 V/bit S_min=7.66576 dof=14 
-ao 0, linearity (mid), low gain 
-applied calibration for subdev 1, channel 0, range 0, aref 0 
-applied calibration for subdev 0, channel 2, range 0, aref 3 
-reading 2.4997732(92), target 2.49989 
-caldac[0] gain=-9.23(12)e-6 V/bit S_min=17.2071 dof=14 
-caldac[2] gain=1.51116(12)e-3 V/bit S_min=184.828 dof=14 
-caldac[3] gain=3.086(12)e-5 V/bit S_min=27.1628 dof=14 
-caldac[4] gain=1.9403(12)e-4 V/bit S_min=114.247 dof=14 
-caldac[5] gain=4.25(12)e-6 V/bit S_min=8.26075 dof=14 
-caldac[16] gain=6.791(12)e-5 V/bit S_min=15.9892 dof=14 
-caldac[17] gain=-9.846(12)e-5 V/bit S_min=20.8168 dof=14 
-caldac[18] gain=-4.05(12)e-6 V/bit S_min=2.05861 dof=14 
-caldac[19] gain=-4.729(12)e-5 V/bit S_min=24.0197 dof=14 
-ao 1, zero offset, low gain 
-applied calibration for subdev 1, channel 1, range 0, aref 0 
-applied calibration for subdev 0, channel 3, range 0, aref 3 
-reading 1.729(70)e-4, target 0.00015259
-caldac[0] gain=-8.12(12)e-6 V/bit S_min=7.8551 dof=14
-caldac[2] gain=1.51032(12)e-3 V/bit S_min=211.483 dof=14 
-caldac[3] gain=3.009(12)e-5 V/bit S_min=7.33812 dof=14 
-caldac[20] gain=6.047(12)e-5 V/bit S_min=3.39682 dof=14 
-caldac[23] gain=-4.576(12)e-5 V/bit S_min=9.37267 dof=14 
-ao 1, reference voltage, low gain 
-applied calibration for subdev 1, channel 1, range 0, aref 0 
-applied calibration for subdev 0, channel 3, range 0, aref 3 
-reading 4.9998865(85), target 4.99992 
-caldac[0] gain=-8.74(12)e-6 V/bit S_min=6.3704 dof=14 
-caldac[2] gain=1.51058(12)e-3 V/bit S_min=204.776 dof=14 
-caldac[3] gain=3.036(12)e-5 V/bit S_min=6.58449 dof=14 
-caldac[4] gain=3.8722(12)e-4 V/bit S_min=249.648 dof=14 
-caldac[5] gain=8.01(12)e-6 V/bit S_min=12.6935 dof=14 
-caldac[20] gain=7.208(12)e-5 V/bit S_min=10.2734 dof=14 
-caldac[21] gain=-1.9541(12)e-4 V/bit S_min=14.4007 dof=14 
-caldac[22] gain=-7.75(12)e-6 V/bit S_min=6.23702 dof=14 
-caldac[23] gain=-4.719(12)e-5 V/bit S_min=8.90949 dof=14 
-ao 1, linearity (mid), low gain 
-applied calibration for subdev 1, channel 1, range 0, aref 0 
-applied calibration for subdev 0, channel 3, range 0, aref 3 
-reading 2.4998030(94), target 2.49989 
-caldac[0] gain=-9.24(12)e-6 V/bit S_min=10.436 dof=14 
-caldac[2] gain=1.51107(12)e-3 V/bit S_min=190.507 dof=14 
-caldac[3] gain=3.098(12)e-5 V/bit S_min=19.4883 dof=14 
-caldac[4] gain=1.9402(12)e-4 V/bit S_min=118.029 dof=14 
-caldac[5] gain=4.44(12)e-6 V/bit S_min=12.7197 dof=14 
-caldac[20] gain=6.780(12)e-5 V/bit S_min=25.1694 dof=14 
-caldac[21] gain=-9.847(12)e-5 V/bit S_min=21.0758 dof=14 
-caldac[22] gain=-3.85(12)e-6 V/bit S_min=4.06931 dof=14 
-caldac[23] gain=-4.732(12)e-5 V/bit S_min=25.8348 dof=14 
-ao 0, unipolar zero offset, low gain 
-applied calibration for subdev 1, channel 0, range 1, aref 0 
-applied calibration for subdev 0, channel 2, range 0, aref 3 
-reading -3.49(81)e-5, target 0 
-caldac[0] gain=-8.16(11)e-6 V/bit S_min=10.3392 dof=14 
-caldac[2] gain=1.51033(12)e-3 V/bit S_min=225.781 dof=14
-caldac[3] gain=3.008(12)e-5 V/bit S_min=5.71954 dof=14
-caldac[16] gain=2.066(12)e-5 V/bit S_min=10.5328 dof=14 
-caldac[19] gain=-2.205(12)e-5 V/bit S_min=9.06023 dof=14 
-ao 0, unipolar high, low gain 
-applied calibration for subdev 1, channel 0, range 1, aref 0 
-applied calibration for subdev 0, channel 2, range 0, aref 3 
-reading 9.0000644(87), target 9.00008 
-caldac[0] gain=-8.05(12)e-6 V/bit S_min=1.00629 dof=14 
-caldac[2] gain=1.51011(12)e-3 V/bit S_min=211.349 dof=14 
-caldac[3] gain=2.993(12)e-5 V/bit S_min=3.5504 dof=14 
-caldac[4] gain=6.9706(12)e-4 V/bit S_min=897.848 dof=14 
-caldac[5] gain=1.382(12)e-5 V/bit S_min=2.19078 dof=14 
-caldac[16] gain=4.096(12)e-5 V/bit S_min=2.63364 dof=14 
-caldac[17] gain=-3.5177(12)e-4 V/bit S_min=36.6138 dof=14 
-caldac[18] gain=-1.394(12)e-5 V/bit S_min=6.23585 dof=14 
-caldac[19] gain=-2.392(12)e-5 V/bit S_min=3.22514 dof=14 
-ao 0, unipolar linearity (low), low gain 
-applied calibration for subdev 1, channel 0, range 1, aref 0 
-applied calibration for subdev 0, channel 2, range 0, aref 3 
-reading 0.9999911(86), target 1.00008 
-caldac[0] gain=-8.20(12)e-6 V/bit S_min=2.39163 dof=14 
-caldac[2] gain=1.51008(12)e-3 V/bit S_min=225.515 dof=14 
-caldac[3] gain=2.993(12)e-5 V/bit S_min=2.07969 dof=14 
-caldac[4] gain=7.724(12)e-5 V/bit S_min=17.7127 dof=14 
-caldac[5] gain=1.53(12)e-6 V/bit S_min=0.977303 dof=14 
-caldac[16] gain=2.535(12)e-5 V/bit S_min=1.29985 dof=14 
-caldac[17] gain=-3.892(12)e-5 V/bit S_min=7.38861 dof=14 
-caldac[18] gain=-1.49(12)e-6 V/bit S_min=0.948021 dof=14 
-caldac[19] gain=-2.246(12)e-5 V/bit S_min=2.52109 dof=14 
-ao 0, unipolar linearity (mid), low gain 
-applied calibration for subdev 1, channel 0, range 1, aref 0 
-applied calibration for subdev 0, channel 2, range 0, aref 3 
-reading 4.9999613(84), target 5.00008 
-caldac[0] gain=-8.65(12)e-6 V/bit S_min=8.3377 dof=14 
-caldac[2] gain=1.51048(12)e-3 V/bit S_min=225.451 dof=14 
-caldac[3] gain=3.032(12)e-5 V/bit S_min=5.11435 dof=14 
-caldac[4] gain=3.8738(12)e-4 V/bit S_min=267.703 dof=14
-caldac[5] gain=8.13(12)e-6 V/bit S_min=12.766 dof=14
-caldac[16] gain=3.060(12)e-5 V/bit S_min=6.47541 dof=14 
-caldac[17] gain=-1.9539(12)e-4 V/bit S_min=9.27436 dof=14 
-caldac[18] gain=-8.27(12)e-6 V/bit S_min=4.48608 dof=14 
-caldac[19] gain=-2.324(12)e-5 V/bit S_min=7.43214 dof=14 
-ao 1, unipolar zero offset, low gain 
-applied calibration for subdev 1, channel 1, range 1, aref 0 
-applied calibration for subdev 0, channel 3, range 0, aref 3 
-reading 3.6(78)e-6, target 0 
-caldac[0] gain=-8.23(11)e-6 V/bit S_min=10.4753 dof=14 
-caldac[2] gain=1.51032(12)e-3 V/bit S_min=207.999 dof=14 
-caldac[3] gain=3.009(12)e-5 V/bit S_min=3.75031 dof=14 
-caldac[20] gain=2.061(12)e-5 V/bit S_min=7.83482 dof=14 
-caldac[23] gain=-2.204(12)e-5 V/bit S_min=5.95498 dof=14 
-ao 1, unipolar high, low gain 
-applied calibration for subdev 1, channel 1, range 1, aref 0 
-applied calibration for subdev 0, channel 3, range 0, aref 3 
-reading 9.0000200(87), target 9.00008 
-caldac[0] gain=-7.87(12)e-6 V/bit S_min=2.36644 dof=14 
-caldac[2] gain=1.51017(12)e-3 V/bit S_min=224.804 dof=14 
-caldac[3] gain=3.001(12)e-5 V/bit S_min=2.94806 dof=14 
-caldac[4] gain=6.9704(12)e-4 V/bit S_min=950.011 dof=14 
-caldac[5] gain=1.378(12)e-5 V/bit S_min=4.40255 dof=14 
-caldac[20] gain=4.088(12)e-5 V/bit S_min=5.92164 dof=14 
-caldac[21] gain=-3.5165(12)e-4 V/bit S_min=29.019 dof=14 
-caldac[22] gain=-1.387(12)e-5 V/bit S_min=2.35465 dof=14 
-caldac[23] gain=-2.399(12)e-5 V/bit S_min=3.46704 dof=14 
-Applied calibration for subdevice 0, channel 0, range 0, aref 0 
-
diff --git a/comedi_calibrate/results/pci-6071e b/comedi_calibrate/results/pci-6071e
deleted file mode 100644 (file)
index a1d83a1..0000000
+++ /dev/null
@@ -1,309 +0,0 @@
-eeprom reference lsb=218 msb=255
-resulting reference voltage: 4.99996
-Warning: device may not be not fully calibrated due to insufficient
-information.
-Please file a bug report at http://bugs.comedi.org/ and attach this output.
-This output will also allow comedi_calibrate to execute more
-quickly in the future.
-Id: comedi_calibrate.c,v 1.84 2003/06/12 19:57:43 fmhess Exp
-Driver name: ni_pcimio
-Device name: pci-6071e
-Id: ni.c,v 1.80 2003/05/25 21:11:20 fmhess Exp
-Comedi version: 0.7.66
-ai, bipolar zero offset, low gain
-reading 3.496(96)e-3, target 0
-caldac[4] gain=-7.863(12)e-4 V/bit S_min=21.857 dof=14
-caldac[8] gain=-1.01(12)e-5 V/bit S_min=0.699013 dof=14
-ai, bipolar zero offset, high gain
-reading -5.5954(61)e-4, target 0
-caldac[2] gain=6.41(81)e-8 V/bit S_min=1.04594 dof=14
-caldac[4] gain=-3.8878(81)e-6 V/bit S_min=2.21943 dof=14
-caldac[8] gain=-8.8661(81)e-6 V/bit S_min=13.8114 dof=14
-ai, bipolar voltage reference, low gain
-reading 5.001536(87), target 4.99996
-caldac[2] gain=-4.825(12)e-4 V/bit S_min=24.8851 dof=14
-caldac[4] gain=-7.812(12)e-4 V/bit S_min=5.92385 dof=14
-caldac[8] gain=-10.0(12)e-6 V/bit S_min=0.833473 dof=14
-ai, unipolar zero offset, low gain
-reading 0.020499(84), target 0.002442
-caldac[4] gain=-5.3645(74)e-4 V/bit S_min=55067.4 dof=14
-caldac[7] gain=-6.3301(73)e-4 V/bit S_min=89089.2 dof=14
-caldac[8] gain=-9.0(12)e-6 V/bit S_min=1.22819 dof=14
-ai, unipolar zero offset, high gain
-reading 0.0( 0)e-2147483648, target 1.221e-05
-caldac[4] gain=-3.440(52)e-8 V/bit S_min=20293.2 dof=14
-caldac[7] gain=-2.600(11)e-7 V/bit S_min=123976 dof=14
-caldac[8] gain=-2.1118(26)e-6 V/bit S_min=467809 dof=14
-ai, unipolar voltage reference, low gain
-reading 5.018162(90), target 4.99996
-caldac[2] gain=-4.805(12)e-4 V/bit S_min=10.2476 dof=14
-caldac[4] gain=-7.811(12)e-4 V/bit S_min=7.58262 dof=14
-caldac[7] gain=-9.601(12)e-4 V/bit S_min=8.59342 dof=14
-caldac[8] gain=-9.1(12)e-6 V/bit S_min=0.774693 dof=14
-ao 0, zero offset, low gain
-reading -0.012243(88), target 0.002442
-caldac[4] gain=-7.857(12)e-4 V/bit S_min=19.0306 dof=14
-caldac[6] gain=-9.039(12)e-4 V/bit S_min=22.6976 dof=14
-caldac[8] gain=-9.0(12)e-6 V/bit S_min=0.687618 dof=14
-caldac[10] gain=-1.362(12)e-4 V/bit S_min=12.3635 dof=14
-ao 0, reference voltage, low gain
-reading 7.980512(86), target 8.00244
-caldac[2] gain=-7.634(12)e-4 V/bit S_min=29.3582 dof=14
-caldac[4] gain=-7.770(12)e-4 V/bit S_min=4.27958 dof=14
-caldac[6] gain=-8.946(12)e-4 V/bit S_min=2.72123 dof=14
-caldac[8] gain=-9.0(12)e-6 V/bit S_min=1.6493 dof=14
-caldac[10] gain=-2.050(12)e-4 V/bit S_min=1.45642 dof=14
-caldac[11] gain=-1.562(12)e-4 V/bit S_min=1.61435 dof=14
-ao 0, linearity (negative), low gain
-reading 3.984733(88), target 4.00244
-caldac[2] gain=-3.781(12)e-4 V/bit S_min=7.11583 dof=14
-caldac[4] gain=-7.760(12)e-4 V/bit S_min=2.55866 dof=14
-caldac[6] gain=-8.945(12)e-4 V/bit S_min=2.82617 dof=14
-caldac[8] gain=-9.5(12)e-6 V/bit S_min=1.31389 dof=14
-caldac[10] gain=-1.852(12)e-4 V/bit S_min=0.724459 dof=14
-caldac[11] gain=-7.80(12)e-5 V/bit S_min=0.597508 dof=14
-ao 1, zero offset, low gain
-reading -0.012859(85), target 0.002442
-caldac[1] gain=-1.370(12)e-4 V/bit S_min=11.4009 dof=14
-caldac[4] gain=-7.853(12)e-4 V/bit S_min=21.2819 dof=14
-caldac[8] gain=-8.9(12)e-6 V/bit S_min=0.684516 dof=14
-caldac[9] gain=-9.040(12)e-4 V/bit S_min=23.8881 dof=14
-ao 1, reference voltage, low gain
-reading 7.983063(83), target 8.00244
-caldac[1] gain=-2.057(12)e-4 V/bit S_min=1.90165 dof=14
-caldac[2] gain=-7.637(12)e-4 V/bit S_min=23.2246 dof=14
-caldac[4] gain=-7.765(12)e-4 V/bit S_min=2.28834 dof=14
-caldac[5] gain=-1.563(12)e-4 V/bit S_min=2.00985 dof=14
-caldac[8] gain=-8.8(12)e-6 V/bit S_min=0.949137 dof=14
-caldac[9] gain=-8.953(12)e-4 V/bit S_min=1.98644 dof=14
-ao 1, linearity (negative), low gain
-reading 3.985644(89), target 4.00244
-caldac[1] gain=-1.853(12)e-4 V/bit S_min=1.78522 dof=14
-caldac[2] gain=-3.788(12)e-4 V/bit S_min=10.0287 dof=14
-caldac[4] gain=-7.753(12)e-4 V/bit S_min=4.62437 dof=14
-caldac[5] gain=-7.79(12)e-5 V/bit S_min=1.26242 dof=14
-caldac[8] gain=-9.3(12)e-6 V/bit S_min=0.382142 dof=14
-caldac[9] gain=-8.949(12)e-4 V/bit S_min=3.74794 dof=14
-ao 0, unipolar zero offset, low gain
-reading -0.011404(84), target 0
-caldac[4] gain=-7.852(12)e-4 V/bit S_min=22.6656 dof=14
-caldac[6] gain=-9.043(12)e-4 V/bit S_min=19.5332 dof=14
-caldac[8] gain=-8.8(12)e-6 V/bit S_min=0.444858 dof=14
-caldac[10] gain=-4.45(12)e-5 V/bit S_min=0.924042 dof=14
-ao 0, unipolar high, low gain
-reading -0.011590(86), target 0
-caldac[4] gain=-7.858(12)e-4 V/bit S_min=17.0993 dof=14
-caldac[6] gain=-9.045(12)e-4 V/bit S_min=18.9856 dof=14
-caldac[8] gain=-8.9(12)e-6 V/bit S_min=0.916444 dof=14
-caldac[10] gain=-4.40(12)e-5 V/bit S_min=0.65867 dof=14
-ao 0, unipolar linearity (mid), low gain
-reading -0.011514(89), target 0
-caldac[4] gain=-7.855(12)e-4 V/bit S_min=17.8868 dof=14
-caldac[6] gain=-9.047(12)e-4 V/bit S_min=20.7486 dof=14
-caldac[8] gain=-8.7(12)e-6 V/bit S_min=0.56776 dof=14
-caldac[10] gain=-4.37(12)e-5 V/bit S_min=0.700342 dof=14
-ao 1, unipolar zero offset, low gain
-reading -0.013150(89), target 0
-caldac[1] gain=-4.42(12)e-5 V/bit S_min=1.27423 dof=14
-caldac[4] gain=-7.856(12)e-4 V/bit S_min=23.4799 dof=14
-caldac[8] gain=-9.0(12)e-6 V/bit S_min=0.656603 dof=14
-caldac[9] gain=-9.042(12)e-4 V/bit S_min=21.7567 dof=14
-ao 1, unipolar high, low gain
-reading -0.013078(86), target 0
-caldac[1] gain=-4.43(12)e-5 V/bit S_min=0.738629 dof=14
-caldac[4] gain=-7.850(12)e-4 V/bit S_min=23.9083 dof=14
-caldac[8] gain=-8.8(12)e-6 V/bit S_min=0.304527 dof=14
-caldac[9] gain=-9.046(12)e-4 V/bit S_min=18.0342 dof=14
-ao 1, unipolar linearity (mid), low gain
-reading -0.013097(84), target 0
-caldac[1] gain=-4.42(12)e-5 V/bit S_min=0.831672 dof=14
-caldac[4] gain=-7.854(12)e-4 V/bit S_min=22.5469 dof=14
-caldac[8] gain=-8.8(12)e-6 V/bit S_min=0.62557 dof=14
-caldac[9] gain=-9.045(12)e-4 V/bit S_min=23.6266 dof=14
-WARNING: you need comedi driver version 0.7.67 or later
-for this calibration to work properly
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar voltage
-reference, low gain
-caldac[2] set to 123
-relative binary: ai, bipolar zero offset, low gain, ai, bipolar zero offset,
-high gain
-caldac[4] set to 131
-binary: ai, bipolar zero offset, high gain
-caldac[0] set to 255
-WARNING: caldac[0] pegged!
-binary: ai, bipolar zero offset, high gain
-caldac[8] set to 62
-postgain linearity: ao 0, linearity (negative), low gain,
-ao 0, zero offset, low gain,
-ao 0, reference voltage, low gain
-caldac[10] set to 153
-binary: ao 0, zero offset, low gain
-caldac[6] set to 105
-binary: ao 0, reference voltage, low gain
-caldac[11] set to 85
-postgain linearity: ao 0, unipolar zero offset, low gain,
-ao 0, unipolar linearity (mid), low gain,
-ao 0, unipolar high, low gain
-caldac[10] set to 1
-binary: ao 0, unipolar zero offset, low gain
-caldac[6] set to 118
-binary: ao 0, unipolar high, low gain
-caldac[11] set to 16
-postgain linearity: ao 1, linearity (negative), low gain,
-ao 1, zero offset, low gain,
-ao 1, reference voltage, low gain
-caldac[1] set to 143
-binary: ao 1, zero offset, low gain
-caldac[9] set to 105
-binary: ao 1, reference voltage, low gain
-caldac[5] set to 115
-postgain linearity: ao 1, unipolar zero offset, low gain,
-ao 1, unipolar linearity (mid), low gain,
-ao 1, unipolar high, low gain
-caldac[1] set to 1
-binary: ao 1, unipolar zero offset, low gain
-caldac[9] set to 116
-binary: ao 1, unipolar high, low gain
-caldac[5] set to 0
-WARNING: caldac[5] pegged!
-writing calibration to /etc/comedi/calibrations/ni_pcimio_pci-6071e_comedi0
-ai, bipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 0, aref 3
-reading 5.68(92)e-4, target 0
-caldac[4] gain=-7.867(12)e-4 V/bit S_min=21.0838 dof=14
-caldac[8] gain=-1.14(12)e-5 V/bit S_min=1.35955 dof=14
-ai, bipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 7, aref 3
-reading 5.2(59)e-7, target 0
-caldac[4] gain=-3.9334(81)e-6 V/bit S_min=10.5606 dof=14
-caldac[8] gain=-8.8700(81)e-6 V/bit S_min=16.3103 dof=14
-ai, bipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 0, aref 3
-reading 5.000963(87), target 4.99996
-caldac[2] gain=-4.825(12)e-4 V/bit S_min=23.7361 dof=14
-caldac[4] gain=-7.819(12)e-4 V/bit S_min=4.81761 dof=14
-caldac[8] gain=-9.9(12)e-6 V/bit S_min=0.971836 dof=14
-ai, unipolar zero offset, low gain
-applied calibration for subdev 0, channel 0, range 8, aref 3
-reading 0.018215(86), target 0.002442
-caldac[4] gain=-5.3987(75)e-4 V/bit S_min=52638 dof=14
-caldac[7] gain=-6.1980(73)e-4 V/bit S_min=92809.6 dof=14
-caldac[8] gain=-9.0(12)e-6 V/bit S_min=1.01631 dof=14
-ai, unipolar zero offset, high gain
-applied calibration for subdev 0, channel 0, range 15, aref 3
-reading 8.838(58)e-5, target 1.221e-05
-caldac[4] gain=-2.6829(52)e-6 V/bit S_min=28212.7 dof=14
-caldac[7] gain=-3.0849(50)e-6 V/bit S_min=49735.8 dof=14
-caldac[8] gain=-2.0447(26)e-6 V/bit S_min=463142 dof=14
-ai, unipolar voltage reference, low gain
-applied calibration for subdev 0, channel 5, range 8, aref 3
-reading 5.017733(89), target 4.99996
-caldac[2] gain=-4.806(12)e-4 V/bit S_min=13.5741 dof=14
-caldac[4] gain=-7.816(12)e-4 V/bit S_min=4.25985 dof=14
-caldac[7] gain=-9.610(12)e-4 V/bit S_min=7.08873 dof=14
-caldac[8] gain=-8.6(12)e-6 V/bit S_min=1.11003 dof=14
-ao 0, zero offset, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 2.742(89)e-3, target 0.002442
-caldac[4] gain=-7.862(12)e-4 V/bit S_min=21.1642 dof=14
-caldac[6] gain=-9.040(12)e-4 V/bit S_min=25.7068 dof=14
-caldac[8] gain=-8.8(12)e-6 V/bit S_min=0.916272 dof=14
-caldac[10] gain=-1.396(12)e-4 V/bit S_min=10.2294 dof=14
-ao 0, reference voltage, low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 8.002456(86), target 8.00244
-caldac[2] gain=-7.649(12)e-4 V/bit S_min=22.7145 dof=14
-caldac[4] gain=-7.773(12)e-4 V/bit S_min=1.9363 dof=14
-caldac[6] gain=-8.957(12)e-4 V/bit S_min=1.68465 dof=14
-caldac[8] gain=-8.8(12)e-6 V/bit S_min=0.814041 dof=14
-caldac[10] gain=-2.051(12)e-4 V/bit S_min=2.5541 dof=14
-caldac[11] gain=-1.552(12)e-4 V/bit S_min=0.894274 dof=14
-ao 0, linearity (negative), low gain
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 4.001874(87), target 4.00244
-caldac[2] gain=-3.802(12)e-4 V/bit S_min=5.15407 dof=14
-caldac[4] gain=-7.759(12)e-4 V/bit S_min=3.55141 dof=14
-caldac[6] gain=-8.954(12)e-4 V/bit S_min=2.50699 dof=14
-caldac[8] gain=-9.2(12)e-6 V/bit S_min=0.518118 dof=14
-caldac[10] gain=-1.855(12)e-4 V/bit S_min=1.37541 dof=14
-caldac[11] gain=-7.76(12)e-5 V/bit S_min=0.917532 dof=14
-ao 1, zero offset, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 3.320(89)e-3, target 0.002442
-caldac[1] gain=-1.395(12)e-4 V/bit S_min=9.13709 dof=14
-caldac[4] gain=-7.862(12)e-4 V/bit S_min=18.5454 dof=14
-caldac[8] gain=-9.6(12)e-6 V/bit S_min=0.531896 dof=14
-caldac[9] gain=-9.062(12)e-4 V/bit S_min=17.5875 dof=14
-ao 1, reference voltage, low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 8.002537(85), target 8.00244
-caldac[1] gain=-2.055(12)e-4 V/bit S_min=2.2748 dof=14
-caldac[2] gain=-7.679(12)e-4 V/bit S_min=17.2396 dof=14
-caldac[4] gain=-7.768(12)e-4 V/bit S_min=2.15147 dof=14
-caldac[5] gain=-1.542(12)e-4 V/bit S_min=0.655287 dof=14
-caldac[8] gain=-9.1(12)e-6 V/bit S_min=1.92542 dof=14
-caldac[9] gain=-8.960(12)e-4 V/bit S_min=3.66176 dof=14
-ao 1, linearity (negative), low gain
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 4.002270(85), target 4.00244
-caldac[1] gain=-1.859(12)e-4 V/bit S_min=0.845903 dof=14
-caldac[2] gain=-3.827(12)e-4 V/bit S_min=11.7608 dof=14
-caldac[4] gain=-7.757(12)e-4 V/bit S_min=1.98853 dof=14
-caldac[5] gain=-7.76(12)e-5 V/bit S_min=1.35054 dof=14
-caldac[8] gain=-8.5(12)e-6 V/bit S_min=0.943043 dof=14
-caldac[9] gain=-8.942(12)e-4 V/bit S_min=1.58679 dof=14
-ao 0, unipolar zero offset, low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 2.10(90)e-4, target 0
-caldac[4] gain=-7.863(12)e-4 V/bit S_min=20.3835 dof=14
-caldac[6] gain=-9.051(12)e-4 V/bit S_min=19.4684 dof=14
-caldac[8] gain=-1.12(12)e-5 V/bit S_min=1.95292 dof=14
-caldac[10] gain=-4.57(12)e-5 V/bit S_min=2.75928 dof=14
-ao 0, unipolar high, low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 3.00(92)e-4, target 0
-caldac[4] gain=-7.868(12)e-4 V/bit S_min=16.4288 dof=14
-caldac[6] gain=-9.056(12)e-4 V/bit S_min=24.5643 dof=14
-caldac[8] gain=-1.11(12)e-5 V/bit S_min=1.43656 dof=14
-caldac[10] gain=-4.65(12)e-5 V/bit S_min=0.837541 dof=14
-ao 0, unipolar linearity (mid), low gain
-applied calibration for subdev 1, channel 0, range 1, aref 0
-applied calibration for subdev 0, channel 2, range 0, aref 3
-reading 1.96(90)e-4, target 0
-caldac[4] gain=-7.868(12)e-4 V/bit S_min=14.2051 dof=14
-caldac[6] gain=-9.056(12)e-4 V/bit S_min=18.6665 dof=14
-caldac[8] gain=-1.12(12)e-5 V/bit S_min=1.18046 dof=14
-caldac[10] gain=-4.56(12)e-5 V/bit S_min=1.98868 dof=14
-ao 1, unipolar zero offset, low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 3.62(91)e-4, target 0
-caldac[1] gain=-4.59(12)e-5 V/bit S_min=2.76109 dof=14
-caldac[4] gain=-7.864(12)e-4 V/bit S_min=17.9176 dof=14
-caldac[8] gain=-1.18(12)e-5 V/bit S_min=1.05356 dof=14
-caldac[9] gain=-9.054(12)e-4 V/bit S_min=20.5404 dof=14
-ao 1, unipolar high, low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 4.67(91)e-4, target 0
-caldac[1] gain=-4.62(12)e-5 V/bit S_min=2.01282 dof=14
-caldac[4] gain=-7.867(12)e-4 V/bit S_min=18.8753 dof=14
-caldac[8] gain=-1.11(12)e-5 V/bit S_min=0.816831 dof=14
-caldac[9] gain=-9.055(12)e-4 V/bit S_min=21.3795 dof=14
-ao 1, unipolar linearity (mid), low gain
-applied calibration for subdev 1, channel 1, range 1, aref 0
-applied calibration for subdev 0, channel 3, range 0, aref 3
-reading 4.91(91)e-4, target 0
-caldac[1] gain=-4.55(12)e-5 V/bit S_min=2.45985 dof=14
-caldac[4] gain=-7.863(12)e-4 V/bit S_min=18.2828 dof=14
-caldac[8] gain=-1.15(12)e-5 V/bit S_min=0.957032 dof=14
-caldac[9] gain=-9.053(12)e-4 V/bit S_min=20.0688 dof=14
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/pci-6110 b/comedi_calibrate/results/pci-6110
deleted file mode 100644 (file)
index 1359b07..0000000
+++ /dev/null
@@ -1,489 +0,0 @@
-eeprom reference lsb=111 msb=0
-resulting reference voltage: 5.00011
-Id: comedi_calibrate.c,v 1.77 2003/05/22 20:49:53 fmhess Exp 
-Driver name: ni_pcimio
-Device name: pci-6110
-Id: ni.c,v 1.79 2003/05/22 20:42:34 fmhess Exp 
-Comedi version: 0.7.66
-ao ch 0, zero offset
-reading 0.167749(55), target 0.00015259
-ao ch 0, reference voltage
-reading 5.248164(37), target 4.99992
-ao ch 1, zero offset
-reading 0.084316(65), target 0.00015259
-ao ch 1, reference voltage
-reading 5.124542(66), target 4.99992
-ai, ch 0, range 0, zero offset
-reading -0.03737(14), target 0
-ai, ch 0, range 0, voltage reference
-reading 3.97212(62)e1, target 39.7509
-ai, ch 1, range 0, zero offset
-reading -0.06172(13), target 0
-ai, ch 1, range 0, voltage reference
-reading 3.95901(62)e1, target 39.7509
-ai, ch 2, range 0, zero offset
-reading -0.06069(12), target 0
-ai, ch 2, range 0, voltage reference
-reading 3.96365(63)e1, target 39.7509
-ai, ch 3, range 0, zero offset
-reading -0.03305(27), target 0
-ai, ch 3, range 0, voltage reference
-reading 3.96762(62)e1, target 39.7509
-ai, ch 0, range 1, zero offset
-reading -0.014910(56), target 0
-ai, ch 0, range 1, voltage reference
-reading 1.57468(86)e1, target 15.7503
-ai, ch 1, range 1, zero offset
-reading -0.025450(94), target 0
-ai, ch 1, range 1, voltage reference
-reading 1.56933(86)e1, target 15.7503
-ai, ch 2, range 1, zero offset
-reading -0.024907(72), target 0
-ai, ch 2, range 1, voltage reference
-reading 1.57111(86)e1, target 15.7503
-ai, ch 3, range 1, zero offset
-reading -0.01376(11), target 0
-ai, ch 3, range 1, voltage reference
-reading 1.57287(86)e1, target 15.7503
-ai, ch 0, range 2, zero offset
-reading -7.550(32)e-3, target 0
-ai, ch 0, range 2, voltage reference
-reading 4.993809(21), target 5.00011
-ai, ch 1, range 2, zero offset
-reading -0.012286(20), target 0
-ai, ch 1, range 2, voltage reference
-reading 4.974927(49), target 5.00011
-ai, ch 2, range 2, zero offset
-reading -0.012000(31), target 0
-ai, ch 2, range 2, voltage reference
-reading 4.982963(65), target 5.00011
-ai, ch 3, range 2, zero offset
-reading -6.553(57)e-3, target 0
-ai, ch 3, range 2, voltage reference
-reading 4.988711(43), target 5.00011
-ai, ch 0, range 3, zero offset
-reading -3.751(14)e-3, target 0
-ai, ch 0, range 3, voltage reference
-reading 3.97205(62), target 3.97509
-ai, ch 1, range 3, zero offset
-reading -6.150(12)e-3, target 0
-ai, ch 1, range 3, voltage reference
-reading 3.95907(62), target 3.97509
-ai, ch 2, range 3, zero offset
-reading -6.043(13)e-3, target 0
-ai, ch 2, range 3, voltage reference
-reading 3.96385(62), target 3.97509
-ai, ch 3, range 3, zero offset
-reading -3.262(28)e-3, target 0
-ai, ch 3, range 3, voltage reference
-reading 3.96762(62), target 3.97509
-ai, ch 0, range 4, zero offset
-reading -1.4871(53)e-3, target 0
-ai, ch 0, range 4, voltage reference
-reading 1.57476(86), target 1.57503
-ai, ch 1, range 4, zero offset
-reading -2.5307(89)e-3, target 0
-ai, ch 1, range 4, voltage reference
-reading 1.56936(86), target 1.57503
-ai, ch 2, range 4, zero offset
-reading -2.4840(71)e-3, target 0
-ai, ch 2, range 4, voltage reference
-reading 1.57114(86), target 1.57503
-ai, ch 3, range 4, zero offset
-reading -1.3956(99)e-3, target 0
-ai, ch 3, range 4, voltage reference
-reading 1.57276(86), target 1.57503
-ai, ch 0, range 5, zero offset
-reading -7.297(36)e-4, target 0
-ai, ch 0, range 5, voltage reference
-reading 0.77509(49), target 0.775017
-ai, ch 1, range 5, zero offset
-reading -1.3641(69)e-3, target 0
-ai, ch 1, range 5, voltage reference
-reading 0.77230(49), target 0.775017
-ai, ch 2, range 5, zero offset
-reading -1.4399(77)e-3, target 0
-ai, ch 2, range 5, voltage reference
-reading 0.77314(49), target 0.775017
-ai, ch 3, range 5, zero offset
-reading -7.717(66)e-4, target 0
-ai, ch 3, range 5, voltage reference
-reading 0.77403(49), target 0.775017
-ai, ch 0, range 6, zero offset
-reading -3.157(35)e-4, target 0
-ai, ch 0, range 6, voltage reference
-reading 0.37521(25), target 0.375008
-ai, ch 1, range 6, zero offset
-reading -7.696(37)e-4, target 0
-ai, ch 1, range 6, voltage reference
-reading 0.37377(25), target 0.375008
-ai, ch 2, range 6, zero offset
-reading -8.735(32)e-4, target 0
-ai, ch 2, range 6, voltage reference
-reading 0.37395(24), target 0.375008
-ai, ch 3, range 6, zero offset
-reading -4.781(43)e-4, target 0
-ai, ch 3, range 6, voltage reference
-reading 0.37450(24), target 0.375008
-ai, ch 0, range 7, zero offset
-reading 3.19(22)e-5, target 0
-ai, ch 0, range 7, voltage reference
-reading 0.150259(100), target 0.150003
-ai, ch 1, range 7, zero offset
-reading -2.899(19)e-4, target 0
-ai, ch 1, range 7, voltage reference
-reading 0.14954(10), target 0.150003
-ai, ch 2, range 7, zero offset
-reading -4.497(21)e-4, target 0
-ai, ch 2, range 7, voltage reference
-reading 0.14949(10), target 0.150003
-ai, ch 3, range 7, zero offset
-reading -2.098(27)e-4, target 0
-ai, ch 3, range 7, voltage reference
-reading 0.14980(10), target 0.150003
-relative binary: ai, ch 0, range 0, voltage reference, ai, ch 0, range 0, zero offset
-caldac[1] set to 119
-binary: ai, ch 0, range 0, zero offset
-caldac[2] set to 140
-relative binary: ai, ch 0, range 1, voltage reference, ai, ch 0, range 1, zero offset
-caldac[1] set to 123
-binary: ai, ch 0, range 1, zero offset
-caldac[2] set to 139
-relative binary: ai, ch 0, range 2, voltage reference, ai, ch 0, range 2, zero offset
-caldac[1] set to 123
-binary: ai, ch 0, range 2, zero offset
-caldac[2] set to 140
-relative binary: ai, ch 0, range 3, voltage reference, ai, ch 0, range 3, zero offset
-caldac[1] set to 119
-binary: ai, ch 0, range 3, zero offset
-caldac[2] set to 140
-relative binary: ai, ch 0, range 4, voltage reference, ai, ch 0, range 4, zero offset
-caldac[1] set to 123
-binary: ai, ch 0, range 4, zero offset
-caldac[2] set to 139
-relative binary: ai, ch 0, range 5, voltage reference, ai, ch 0, range 5, zero offset
-caldac[1] set to 127
-binary: ai, ch 0, range 5, zero offset
-caldac[2] set to 139
-relative binary: ai, ch 0, range 6, voltage reference, ai, ch 0, range 6, zero offset
-caldac[1] set to 127
-binary: ai, ch 0, range 6, zero offset
-caldac[2] set to 137
-relative binary: ai, ch 0, range 7, voltage reference, ai, ch 0, range 7, zero offset
-caldac[1] set to 125
-binary: ai, ch 0, range 7, zero offset
-caldac[2] set to 125
-relative binary: ai, ch 1, range 0, voltage reference, ai, ch 1, range 0, zero offset
-caldac[3] set to 155
-binary: ai, ch 1, range 0, zero offset
-caldac[4] set to 147
-relative binary: ai, ch 1, range 1, voltage reference, ai, ch 1, range 1, zero offset
-caldac[3] set to 155
-binary: ai, ch 1, range 1, zero offset
-caldac[4] set to 148
-relative binary: ai, ch 1, range 2, voltage reference, ai, ch 1, range 2, zero offset
-caldac[3] set to 157
-binary: ai, ch 1, range 2, zero offset
-caldac[4] set to 147
-relative binary: ai, ch 1, range 3, voltage reference, ai, ch 1, range 3, zero offset
-caldac[3] set to 155
-binary: ai, ch 1, range 3, zero offset
-caldac[4] set to 147
-relative binary: ai, ch 1, range 4, voltage reference, ai, ch 1, range 4, zero offset
-caldac[3] set to 159
-binary: ai, ch 1, range 4, zero offset
-caldac[4] set to 148
-relative binary: ai, ch 1, range 5, voltage reference, ai, ch 1, range 5, zero offset
-caldac[3] set to 163
-binary: ai, ch 1, range 5, zero offset
-caldac[4] set to 149
-relative binary: ai, ch 1, range 6, voltage reference, ai, ch 1, range 6, zero offset
-caldac[3] set to 159
-binary: ai, ch 1, range 6, zero offset
-caldac[4] set to 151
-relative binary: ai, ch 1, range 7, voltage reference, ai, ch 1, range 7, zero offset
-caldac[3] set to 161
-binary: ai, ch 1, range 7, zero offset
-caldac[4] set to 151
-relative binary: ai, ch 2, range 0, voltage reference, ai, ch 2, range 0, zero offset
-caldac[5] set to 139
-binary: ai, ch 2, range 0, zero offset
-caldac[6] set to 145
-relative binary: ai, ch 2, range 1, voltage reference, ai, ch 2, range 1, zero offset
-caldac[5] set to 144
-binary: ai, ch 2, range 1, zero offset
-caldac[6] set to 147
-relative binary: ai, ch 2, range 2, voltage reference, ai, ch 2, range 2, zero offset
-caldac[5] set to 140
-binary: ai, ch 2, range 2, zero offset
-caldac[6] set to 145
-relative binary: ai, ch 2, range 3, voltage reference, ai, ch 2, range 3, zero offset
-caldac[5] set to 141
-binary: ai, ch 2, range 3, zero offset
-caldac[6] set to 145
-relative binary: ai, ch 2, range 4, voltage reference, ai, ch 2, range 4, zero offset
-caldac[5] set to 144
-binary: ai, ch 2, range 4, zero offset
-caldac[6] set to 147
-relative binary: ai, ch 2, range 5, voltage reference, ai, ch 2, range 5, zero offset
-caldac[5] set to 148
-binary: ai, ch 2, range 5, zero offset
-caldac[6] set to 149
-relative binary: ai, ch 2, range 6, voltage reference, ai, ch 2, range 6, zero offset
-caldac[5] set to 149
-binary: ai, ch 2, range 6, zero offset
-caldac[6] set to 155
-relative binary: ai, ch 2, range 7, voltage reference, ai, ch 2, range 7, zero offset
-caldac[5] set to 151
-binary: ai, ch 2, range 7, zero offset
-caldac[6] set to 163
-relative binary: ai, ch 3, range 0, voltage reference, ai, ch 3, range 0, zero offset
-caldac[7] set to 135
-binary: ai, ch 3, range 0, zero offset
-caldac[8] set to 137
-relative binary: ai, ch 3, range 1, voltage reference, ai, ch 3, range 1, zero offset
-caldac[7] set to 138
-binary: ai, ch 3, range 1, zero offset
-caldac[8] set to 137
-relative binary: ai, ch 3, range 2, voltage reference, ai, ch 3, range 2, zero offset
-caldac[7] set to 141
-binary: ai, ch 3, range 2, zero offset
-caldac[8] set to 136
-relative binary: ai, ch 3, range 3, voltage reference, ai, ch 3, range 3, zero offset
-caldac[7] set to 135
-binary: ai, ch 3, range 3, zero offset
-caldac[8] set to 137
-relative binary: ai, ch 3, range 4, voltage reference, ai, ch 3, range 4, zero offset
-caldac[7] set to 138
-binary: ai, ch 3, range 4, zero offset
-caldac[8] set to 137
-relative binary: ai, ch 3, range 5, voltage reference, ai, ch 3, range 5, zero offset
-caldac[7] set to 143
-binary: ai, ch 3, range 5, zero offset
-caldac[8] set to 139
-relative binary: ai, ch 3, range 6, voltage reference, ai, ch 3, range 6, zero offset
-caldac[7] set to 143
-binary: ai, ch 3, range 6, zero offset
-caldac[8] set to 141
-relative binary: ai, ch 3, range 7, voltage reference, ai, ch 3, range 7, zero offset
-caldac[7] set to 147
-binary: ai, ch 3, range 7, zero offset
-caldac[8] set to 143
-relative binary: ao ch 0, zero offset, ao ch 0, reference voltage
-caldac[13] set to 191
-binary: ao ch 0, zero offset
-caldac[14] set to 32
-relative binary: ao ch 1, zero offset, ao ch 1, reference voltage
-caldac[15] set to 158
-binary: ao ch 1, zero offset
-caldac[16] set to 77
-writing calibration to foo
-ao ch 0, zero offset
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 0, range 2, aref 2
-reading -5.01(75)e-4, target 0.00015259
-ao ch 0, reference voltage
-applied calibration for subdev 1, channel 0, range 0, aref 0
-applied calibration for subdev 0, channel 0, range 2, aref 2
-reading 4.998669(24), target 4.99992
-ao ch 1, zero offset
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 0, range 2, aref 2
-reading -9.40(70)e-4, target 0.00015259
-ao ch 1, reference voltage
-applied calibration for subdev 1, channel 1, range 0, aref 0
-applied calibration for subdev 0, channel 0, range 2, aref 2
-reading 4.998822(17), target 4.99992
-ai, ch 0, range 0, zero offset
-applied calibration for subdev 0, channel 0, range 0, aref 2
-reading -2.81(37)e-3, target 0
-ai, ch 0, range 0, voltage reference
-applied calibration for subdev 0, channel 0, range 0, aref 2
-reading 3.97350(62)e1, target 39.7509
-ai, ch 1, range 0, zero offset
-applied calibration for subdev 0, channel 1, range 0, aref 2
-reading -5.79(34)e-3, target 0
-ai, ch 1, range 0, voltage reference
-applied calibration for subdev 0, channel 1, range 0, aref 2
-reading 3.97332(62)e1, target 39.7509
-ai, ch 2, range 0, zero offset
-applied calibration for subdev 0, channel 2, range 0, aref 2
-reading -6.51(32)e-3, target 0
-ai, ch 2, range 0, voltage reference
-applied calibration for subdev 0, channel 2, range 0, aref 2
-reading 3.97287(62)e1, target 39.7509
-ai, ch 3, range 0, zero offset
-applied calibration for subdev 0, channel 3, range 0, aref 2
-reading -1.62(38)e-3, target 0
-ai, ch 3, range 0, voltage reference
-applied calibration for subdev 0, channel 3, range 0, aref 2
-reading 3.97325(62)e1, target 39.7509
-ai, ch 0, range 1, zero offset
-applied calibration for subdev 0, channel 0, range 1, aref 2
-reading -2.28(13)e-3, target 0
-ai, ch 0, range 1, voltage reference
-applied calibration for subdev 0, channel 0, range 1, aref 2
-reading 1.57575(86)e1, target 15.7503
-ai, ch 1, range 1, zero offset
-applied calibration for subdev 0, channel 1, range 1, aref 2
-reading -1.96(14)e-3, target 0
-ai, ch 1, range 1, voltage reference
-applied calibration for subdev 0, channel 1, range 1, aref 2
-reading 1.57523(86)e1, target 15.7503
-ai, ch 2, range 1, zero offset
-applied calibration for subdev 0, channel 2, range 1, aref 2
-reading -2.22(14)e-3, target 0
-ai, ch 2, range 1, voltage reference
-applied calibration for subdev 0, channel 2, range 1, aref 2
-reading 1.57503(85)e1, target 15.7503
-ai, ch 3, range 1, zero offset
-applied calibration for subdev 0, channel 3, range 1, aref 2
-reading -1.77(14)e-3, target 0
-ai, ch 3, range 1, voltage reference
-applied calibration for subdev 0, channel 3, range 1, aref 2
-reading 1.57543(86)e1, target 15.7503
-ai, ch 0, range 2, zero offset
-applied calibration for subdev 0, channel 0, range 2, aref 2
-reading -6.87(73)e-4, target 0
-ai, ch 0, range 2, voltage reference
-applied calibration for subdev 0, channel 0, range 2, aref 2
-reading 4.998979(30), target 5.00011
-ai, ch 1, range 2, zero offset
-applied calibration for subdev 0, channel 1, range 2, aref 2
-reading -1.178(67)e-3, target 0
-ai, ch 1, range 2, voltage reference
-applied calibration for subdev 0, channel 1, range 2, aref 2
-reading 4.998793(17), target 5.00011
-ai, ch 2, range 2, zero offset
-applied calibration for subdev 0, channel 2, range 2, aref 2
-reading -1.087(68)e-3, target 0
-ai, ch 2, range 2, voltage reference
-applied calibration for subdev 0, channel 2, range 2, aref 2
-reading 4.998641(26), target 5.00011
-ai, ch 3, range 2, zero offset
-applied calibration for subdev 0, channel 3, range 2, aref 2
-reading -9.44(70)e-4, target 0
-ai, ch 3, range 2, voltage reference
-applied calibration for subdev 0, channel 3, range 2, aref 2
-reading 4.999304(49), target 5.00011
-ai, ch 0, range 3, zero offset
-applied calibration for subdev 0, channel 0, range 3, aref 2
-reading -2.38(37)e-4, target 0
-ai, ch 0, range 3, voltage reference
-applied calibration for subdev 0, channel 0, range 3, aref 2
-reading 3.97356(62), target 3.97509
-ai, ch 1, range 3, zero offset
-applied calibration for subdev 0, channel 1, range 3, aref 2
-reading -6.08(33)e-4, target 0
-ai, ch 1, range 3, voltage reference
-applied calibration for subdev 0, channel 1, range 3, aref 2
-reading 3.97333(62), target 3.97509
-ai, ch 2, range 3, zero offset
-applied calibration for subdev 0, channel 2, range 3, aref 2
-reading -5.94(33)e-4, target 0
-ai, ch 2, range 3, voltage reference
-applied calibration for subdev 0, channel 2, range 3, aref 2
-reading 3.97349(62), target 3.97509
-ai, ch 3, range 3, zero offset
-applied calibration for subdev 0, channel 3, range 3, aref 2
-reading -1.96(38)e-4, target 0
-ai, ch 3, range 3, voltage reference
-applied calibration for subdev 0, channel 3, range 3, aref 2
-reading 3.97315(62), target 3.97509
-ai, ch 0, range 4, zero offset
-applied calibration for subdev 0, channel 0, range 4, aref 2
-reading -2.57(13)e-4, target 0
-ai, ch 0, range 4, voltage reference
-applied calibration for subdev 0, channel 0, range 4, aref 2
-reading 1.57571(86), target 1.57503
-ai, ch 1, range 4, zero offset
-applied calibration for subdev 0, channel 1, range 4, aref 2
-reading -1.65(14)e-4, target 0
-ai, ch 1, range 4, voltage reference
-applied calibration for subdev 0, channel 1, range 4, aref 2
-reading 1.57555(85), target 1.57503
-ai, ch 2, range 4, zero offset
-applied calibration for subdev 0, channel 2, range 4, aref 2
-reading -1.93(14)e-4, target 0
-ai, ch 2, range 4, voltage reference
-applied calibration for subdev 0, channel 2, range 4, aref 2
-reading 1.57577(86), target 1.57503
-ai, ch 3, range 4, zero offset
-applied calibration for subdev 0, channel 3, range 4, aref 2
-reading -1.85(14)e-4, target 0
-ai, ch 3, range 4, voltage reference
-applied calibration for subdev 0, channel 3, range 4, aref 2
-reading 1.57540(86), target 1.57503
-ai, ch 0, range 5, zero offset
-applied calibration for subdev 0, channel 0, range 5, aref 2
-reading -2.53(76)e-5, target 0
-ai, ch 0, range 5, voltage reference
-applied calibration for subdev 0, channel 0, range 5, aref 2
-reading 0.77586(49), target 0.775017
-ai, ch 1, range 5, zero offset
-applied calibration for subdev 0, channel 1, range 5, aref 2
-reading -9.11(71)e-5, target 0
-ai, ch 1, range 5, voltage reference
-applied calibration for subdev 0, channel 1, range 5, aref 2
-reading 0.77579(49), target 0.775017
-ai, ch 2, range 5, zero offset
-applied calibration for subdev 0, channel 2, range 5, aref 2
-reading -1.307(65)e-4, target 0
-ai, ch 2, range 5, voltage reference
-applied calibration for subdev 0, channel 2, range 5, aref 2
-reading 0.77570(49), target 0.775017
-ai, ch 3, range 5, zero offset
-applied calibration for subdev 0, channel 3, range 5, aref 2
-reading -5.15(75)e-5, target 0
-ai, ch 3, range 5, voltage reference
-applied calibration for subdev 0, channel 3, range 5, aref 2
-reading 0.77573(49), target 0.775017
-ai, ch 0, range 6, zero offset
-applied calibration for subdev 0, channel 0, range 6, aref 2
-reading -1.86(39)e-5, target 0
-ai, ch 0, range 6, voltage reference
-applied calibration for subdev 0, channel 0, range 6, aref 2
-reading 0.37528(24), target 0.375008
-ai, ch 1, range 6, zero offset
-applied calibration for subdev 0, channel 1, range 6, aref 2
-reading -4.48(36)e-5, target 0
-ai, ch 1, range 6, voltage reference
-applied calibration for subdev 0, channel 1, range 6, aref 2
-reading 0.37541(25), target 0.375008
-ai, ch 2, range 6, zero offset
-applied calibration for subdev 0, channel 2, range 6, aref 2
-reading -3.84(37)e-5, target 0
-ai, ch 2, range 6, voltage reference
-applied calibration for subdev 0, channel 2, range 6, aref 2
-reading 0.37545(25), target 0.375008
-ai, ch 3, range 6, zero offset
-applied calibration for subdev 0, channel 3, range 6, aref 2
-reading -3.91(42)e-5, target 0
-ai, ch 3, range 6, voltage reference
-applied calibration for subdev 0, channel 3, range 6, aref 2
-reading 0.37542(25), target 0.375008
-ai, ch 0, range 7, zero offset
-applied calibration for subdev 0, channel 0, range 7, aref 2
-reading 3.7(21)e-6, target 0
-ai, ch 0, range 7, voltage reference
-applied calibration for subdev 0, channel 0, range 7, aref 2
-reading 0.15022(10), target 0.150003
-ai, ch 1, range 7, zero offset
-applied calibration for subdev 0, channel 1, range 7, aref 2
-reading 0.4(19)e-6, target 0
-ai, ch 1, range 7, voltage reference
-applied calibration for subdev 0, channel 1, range 7, aref 2
-reading 0.15021(10), target 0.150003
-ai, ch 2, range 7, zero offset
-applied calibration for subdev 0, channel 2, range 7, aref 2
-reading -2.11(21)e-5, target 0
-ai, ch 2, range 7, voltage reference
-applied calibration for subdev 0, channel 2, range 7, aref 2
-reading 0.14994(10), target 0.150003
-ai, ch 3, range 7, zero offset
-applied calibration for subdev 0, channel 3, range 7, aref 2
-reading -1.06(26)e-5, target 0
-ai, ch 3, range 7, voltage reference
-applied calibration for subdev 0, channel 3, range 7, aref 2
-reading 0.150191(99), target 0.150003
-Applied calibration for subdevice 0, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/pci-6711 b/comedi_calibrate/results/pci-6711
deleted file mode 100644 (file)
index 6d0298a..0000000
+++ /dev/null
@@ -1,152 +0,0 @@
-eeprom reference lsb=37 msb=0
-resulting reference voltage: 5.00004
-Id: comedi_calibrate.c,v 1.91 2004/02/15 22:24:57 fmhess Exp 
-Driver name: ni_pcimio
-Device name: pci-6711
-Id: ni.c,v 1.107 2004/03/07 22:21:10 fmhess Exp 
-Comedi version: 0.7.68
-linearity binary: dac0 ground, ground referenced,
-dac0 mid, ground referenced,
-dac0 high, ground referenced
-caldac[4] set to 143
-relative binary: dac0 high, ground referenced, dac0 ground, ground referenced
-caldac[8] set to 87
-binary: dac0 ground, ground referenced
-caldac[7] set to 125
-linearity binary: dac1 ground, ground referenced,
-dac1 mid, ground referenced,
-dac1 high, ground referenced
-caldac[10] set to 152
-relative binary: dac1 high, ground referenced, dac1 ground, ground referenced
-caldac[2] set to 88
-binary: dac1 ground, ground referenced
-caldac[6] set to 127
-linearity binary: dac2 ground, ground referenced,
-dac2 mid, ground referenced,
-dac2 high, ground referenced
-caldac[1] set to 142
-relative binary: dac2 high, ground referenced, dac2 ground, ground referenced
-caldac[11] set to 97
-binary: dac2 ground, ground referenced
-caldac[9] set to 127
-linearity binary: dac3 ground, ground referenced,
-dac3 mid, ground referenced,
-dac3 high, ground referenced
-caldac[0] set to 125
-relative binary: dac3 high, ground referenced, dac3 ground, ground referenced
-caldac[5] set to 101
-binary: dac3 ground, ground referenced
-caldac[3] set to 129
-writing calibration to blah
-dac0 ground, ground referenced
-applied calibration for subdev 1, channel 0, range 0, aref 0
-failed to apply calibration for subdev 8, channel 0, range 0, aref 0
-reading 0.4998627(54), target 0.499884
-caldac[4] gain=5.476(14)e-6 V/bit S_min=15.4614 dof=14
-caldac[7] gain=3.67149(46)e-5 V/bit S_min=125.788 dof=14
-dac0 mid, ground referenced
-applied calibration for subdev 1, channel 0, range 0, aref 0
-failed to apply calibration for subdev 8, channel 0, range 0, aref 0
-reading 0.3093690(54), target 0.309394
-caldac[4] gain= V/bit S_min=inf dof=14
-caldac[7] gain=3.6699(18)e-5 V/bit S_min=6.50588 dof=14
-caldac[8] gain=4.956(18)e-6 V/bit S_min=4.37647 dof=14
-dac0 high, ground referenced
-applied calibration for subdev 1, channel 0, range 0, aref 0
-failed to apply calibration for subdev 8, channel 0, range 0, aref 0
-reading 0.118883( 0), target 0.118905
-caldac[0] gain= V/bit S_min=inf dof=14
-caldac[1] gain= V/bit S_min=inf dof=14
-caldac[2] gain= V/bit S_min=inf dof=14
-caldac[3] gain= V/bit S_min=inf dof=14
-caldac[4] gain=8.393(23)e-6 V/bit S_min=3.11906 dof=14
-caldac[5] gain= V/bit S_min=inf dof=14
-caldac[6] gain= V/bit S_min=inf dof=14
-caldac[7] gain=3.66897(46)e-5 V/bit S_min=202.212 dof=14
-caldac[8] gain=9.909(23)e-6 V/bit S_min=4.62494 dof=14
-caldac[9] gain= V/bit S_min=inf dof=14
-caldac[10] gain= V/bit S_min=inf dof=14
-caldac[11] gain= V/bit S_min=inf dof=14
-caldac[12] gain= V/bit S_min=inf dof=14
-caldac[13] gain= V/bit S_min=inf dof=14
-caldac[15] gain= V/bit S_min=inf dof=14
-dac1 ground, ground referenced
-applied calibration for subdev 1, channel 1, range 0, aref 0
-failed to apply calibration for subdev 8, channel 1, range 0, aref 0
-reading 0.499840( 0), target 0.499884
-caldac[6] gain=3.6719(23)e-5 V/bit S_min=3.75153 dof=14
-caldac[10] gain=5.522(18)e-6 V/bit S_min=5.71176 dof=14
-dac1 mid, ground referenced
-applied calibration for subdev 1, channel 1, range 0, aref 0
-failed to apply calibration for subdev 8, channel 1, range 0, aref 0
-reading 0.309361( 0), target 0.309394
-caldac[0] gain= V/bit S_min=inf dof=14
-caldac[2] gain=4.951(18)e-6 V/bit S_min=4.58824 dof=14
-caldac[4] gain= V/bit S_min=inf dof=14
-caldac[6] gain=3.6709(18)e-5 V/bit S_min=7.78824 dof=14
-caldac[7] gain= V/bit S_min=inf dof=14
-caldac[8] gain= V/bit S_min=inf dof=14
-caldac[10] gain=7.696(14)e-6 V/bit S_min=11.7386 dof=14
-caldac[11] gain= V/bit S_min=inf dof=14
-caldac[12] gain= V/bit S_min=inf dof=14
-caldac[14] gain= V/bit S_min=inf dof=14
-caldac[15] gain= V/bit S_min=inf dof=14
-dac1 high, ground referenced
-applied calibration for subdev 1, channel 1, range 0, aref 0
-failed to apply calibration for subdev 8, channel 1, range 0, aref 0
-reading 0.1188602(54), target 0.118905
-caldac[2] gain=9.920(14)e-6 V/bit S_min=15.7542 dof=14
-caldac[6] gain=3.67107(46)e-5 V/bit S_min=284.094 dof=14
-caldac[10] gain=8.437(27)e-6 V/bit S_min=1.72288 dof=14
-caldac[11] gain= V/bit S_min=inf dof=14
-dac2 ground, ground referenced
-applied calibration for subdev 1, channel 2, range 0, aref 0
-failed to apply calibration for subdev 8, channel 2, range 0, aref 0
-reading 0.499886( 0), target 0.499884
-caldac[1] gain=5.531(14)e-6 V/bit S_min=18.2641 dof=14
-caldac[9] gain=3.68411(46)e-5 V/bit S_min=140.847 dof=14
-dac2 mid, ground referenced
-applied calibration for subdev 1, channel 2, range 0, aref 0
-failed to apply calibration for subdev 8, channel 2, range 0, aref 0
-reading 0.3093996(54), target 0.309394
-caldac[1] gain=7.702(23)e-6 V/bit S_min=4.01506 dof=14
-caldac[9] gain=3.6817(14)e-5 V/bit S_min=13.8719 dof=14
-caldac[11] gain=4.932(14)e-6 V/bit S_min=17.8458 dof=14
-dac2 high, ground referenced
-applied calibration for subdev 1, channel 2, range 0, aref 0
-failed to apply calibration for subdev 8, channel 2, range 0, aref 0
-reading 0.1189059(54), target 0.118905
-caldac[1] gain=8.4282(46)e-6 V/bit S_min=144.8 dof=14
-caldac[9] gain=3.68271(46)e-5 V/bit S_min=154.024 dof=14
-caldac[11] gain=9.8700(46)e-6 V/bit S_min=145.176 dof=14
-dac3 ground, ground referenced
-applied calibration for subdev 1, channel 3, range 0, aref 0
-failed to apply calibration for subdev 8, channel 3, range 0, aref 0
-reading 0.499886( 0), target 0.499884
-caldac[0] gain=5.4543(91)e-6 V/bit S_min=35.6235 dof=14
-caldac[3] gain=3.68678(46)e-5 V/bit S_min=190.353 dof=14
-dac3 mid, ground referenced
-applied calibration for subdev 1, channel 3, range 0, aref 0
-failed to apply calibration for subdev 8, channel 3, range 0, aref 0
-reading 0.309407( 0), target 0.309394
-caldac[0] gain=7.6239(91)e-6 V/bit S_min=13.6235 dof=14
-caldac[3] gain=3.6861(18)e-5 V/bit S_min=11.5941 dof=14
-caldac[4] gain= V/bit S_min=inf dof=14
-caldac[5] gain=4.984(18)e-6 V/bit S_min=4.49412 dof=14
-caldac[6] gain= V/bit S_min=inf dof=14
-caldac[7] gain= V/bit S_min=inf dof=14
-caldac[9] gain= V/bit S_min=inf dof=14
-caldac[10] gain= V/bit S_min=inf dof=14
-caldac[11] gain= V/bit S_min=inf dof=14
-caldac[12] gain= V/bit S_min=inf dof=14
-caldac[13] gain= V/bit S_min=inf dof=14
-caldac[14] gain= V/bit S_min=inf dof=14
-caldac[15] gain= V/bit S_min=inf dof=14
-dac3 high, ground referenced
-applied calibration for subdev 1, channel 3, range 0, aref 0
-failed to apply calibration for subdev 8, channel 3, range 0, aref 0
-reading 0.118914( 0), target 0.118905
-caldac[0] gain=8.343(18)e-6 V/bit S_min=7.49412 dof=14
-caldac[3] gain=3.68937(91)e-5 V/bit S_min=40.4471 dof=14
-caldac[5] gain=9.924(18)e-6 V/bit S_min=7.90588 dof=14
-Applied calibration for subdevice 1, channel 0, range 0, aref 0
diff --git a/comedi_calibrate/results/pci-6713 b/comedi_calibrate/results/pci-6713
deleted file mode 100644 (file)
index 655db1d..0000000
+++ /dev/null
@@ -1,16 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-$Id$
-Driver name: ni_pcimio
-Device name: pci-6713
-Comedi version: 0.7.61
-ai, bipolar zero offset, low gain
-insn barfed: subdev=0, chan=0, range=255, aref=3, n=128, ret=-1, Invalid argument
-barf
-offset 0.0( 0)e-2147483648, target 0
-insn barfed: subdev=0, chan=0, range=255, aref=3, n=128, ret=-1, Invalid argument
-barf
-insn barfed: subdev=0, chan=0, range=255, aref=3, n=128, ret=-1, Invalid argument
-barf
-insn barfed: subdev=0, chan=0, range=255, aref=3, n=128, ret=-1, Invalid argument
-barf
diff --git a/comedi_calibrate/results/pci-mio-16e-1 b/comedi_calibrate/results/pci-mio-16e-1
deleted file mode 100644 (file)
index 0e5cea0..0000000
+++ /dev/null
@@ -1,130 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-Id: comedi_calibrate.c,v 1.21 2001/10/10 22:07:53 ds Exp 
-Driver name: ni_pcimio
-Device name: pci-mio-16e-1
-Comedi version: 0.7.61
-ai, bipolar zero offset, low gain
-offset 0.01206(25), target 0
-caldac[0] gain=-8.29(22)e-6 V/bit S_min=278.185 dof=254
-caldac[1] gain=-7.5209(22)e-4 V/bit S_min=445.48 dof=254
-ai, bipolar zero offset, high gain
-offset 2.066(17)e-4, target 0
-caldac[0] gain=-8.7337(15)e-6 V/bit S_min=8697.64 dof=254
-caldac[1] gain=-3.7588(15)e-6 V/bit S_min=265.249 dof=254
-caldac[3] gain=-8.5(15)e-9 V/bit S_min=262.81 dof=254
-ai, bipolar voltage reference, low gain
-offset 5.00755(22), target 5
-caldac[0] gain=-8.59(22)e-6 V/bit S_min=341.899 dof=254
-caldac[1] gain=-7.4253(22)e-4 V/bit S_min=888.173 dof=254
-caldac[3] gain=-4.7244(22)e-4 V/bit S_min=671.915 dof=254
-ai, unipolar zero offset, low gain
-offset 0.03392(29), target 0
-caldac[0] gain=-8.37(22)e-6 V/bit S_min=288.608 dof=254
-caldac[1] gain=-7.4805(46)e-4 V/bit S_min=172.508 dof=157
-caldac[2] gain=-9.6141(49)e-4 V/bit S_min=165.671 dof=151
-caldac[3] gain=-5.63(23)e-6 V/bit S_min=256.808 dof=254
-ao 0, zero offset, low gain
-offset 0.01023(27), target 0.002442
-caldac[0] gain=-8.73(22)e-6 V/bit S_min=324.815 dof=254
-caldac[1] gain=-7.5188(22)e-4 V/bit S_min=389.927 dof=254
-caldac[4] gain=-1.2476(22)e-4 V/bit S_min=433.973 dof=254
-caldac[5] gain=-8.1886(23)e-4 V/bit S_min=420.241 dof=254
-ao 0, reference voltage, low gain
-offset 3.28(27)e-3, target -0.001221
-caldac[0] gain=-9.59(23)e-6 V/bit S_min=302.239 dof=254
-caldac[1] gain=-7.5264(22)e-4 V/bit S_min=431.901 dof=254
-caldac[3] gain=1.88(23)e-6 V/bit S_min=335.204 dof=254
-caldac[4] gain=-1.5219(22)e-4 V/bit S_min=354.72 dof=254
-caldac[5] gain=-8.1937(22)e-4 V/bit S_min=322.292 dof=254
-caldac[6] gain=-1.0071(22)e-4 V/bit S_min=372.167 dof=254
-ao 1, zero offset, low gain
-offset 9.58(26)e-3, target 0.002442
-caldac[0] gain=-8.72(22)e-6 V/bit S_min=279.315 dof=254
-caldac[1] gain=-7.5238(22)e-4 V/bit S_min=441.762 dof=254
-caldac[3] gain=1.17(23)e-6 V/bit S_min=328.146 dof=254
-caldac[7] gain=-1.2458(22)e-4 V/bit S_min=407.535 dof=254
-caldac[8] gain=-8.2001(22)e-4 V/bit S_min=454.449 dof=254
-ao 1, reference voltage, low gain
-offset 2.63(27)e-3, target -0.001221
-caldac[0] gain=-9.71(23)e-6 V/bit S_min=261.054 dof=254
-caldac[1] gain=-7.5267(22)e-4 V/bit S_min=358.388 dof=254
-caldac[3] gain=2.15(23)e-6 V/bit S_min=292.124 dof=254
-caldac[7] gain=-1.5248(22)e-4 V/bit S_min=307.658 dof=254
-caldac[8] gain=-8.1997(22)e-4 V/bit S_min=507.586 dof=254
-caldac[9] gain=-1.0055(23)e-4 V/bit S_min=296.253 dof=254
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, high gain
-caldac[1] gain=-7.5218(22)e-4 V/bit S_min=436.614 dof=254
-caldac[1] gain=-3.7575(15)e-6 V/bit S_min=346.397 dof=254
-caldac[1] set to 142.699
-linear: ai, bipolar zero offset, high gain
-caldac[0] gain=-8.7341(15)e-6 V/bit S_min=8897.47 dof=254
-caldac[0] set to 152.69
-linear: ai, bipolar voltage reference, low gain
-caldac[3] gain=-4.7280(22)e-4 V/bit S_min=678.224 dof=254
-caldac[3] set to 117.778
-linear: ai, unipolar zero offset, low gain
-caldac[2] gain=-9.6156(54)e-4 V/bit S_min=155.07 dof=139
-caldac[2] set to 149.988
-linear: ao 0, zero offset, low gain
-caldac[5] gain=-8.1932(22)e-4 V/bit S_min=427.632 dof=254
-caldac[5] set to 121.111
-linear: ao 0, reference voltage, low gain
-caldac[6] gain=-9.969(22)e-5 V/bit S_min=328.876 dof=254
-caldac[6] set to 92.4325
-linear: ao 1, zero offset, low gain
-caldac[8] gain=-8.2062(23)e-4 V/bit S_min=459.368 dof=254
-caldac[8] set to 120.361
-linear: ao 1, reference voltage, low gain
-caldac[9] gain=-1.0039(22)e-4 V/bit S_min=323.354 dof=254
-caldac[9] set to 99.7785
-ai, bipolar zero offset, low gain
-offset -6.5(27)e-4, target 0
-caldac[0] gain=-9.95(23)e-6 V/bit S_min=338.439 dof=254
-caldac[1] gain=-7.5204(22)e-4 V/bit S_min=429.041 dof=254
-caldac[3] gain=2.51(22)e-6 V/bit S_min=364.338 dof=254
-caldac[10] gain=-1.00(22)e-6 V/bit S_min=323.405 dof=254
-ai, bipolar zero offset, high gain
-offset -9.20(17)e-5, target 0
-caldac[0] gain=-8.7297(15)e-6 V/bit S_min=8791.37 dof=254
-caldac[1] gain=-3.7597(15)e-6 V/bit S_min=302.304 dof=254
-caldac[3] gain=1.84(15)e-8 V/bit S_min=294.466 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.99966(27), target 5
-caldac[0] gain=-8.65(22)e-6 V/bit S_min=284.39 dof=254
-caldac[1] gain=-7.4207(23)e-4 V/bit S_min=657.313 dof=254
-caldac[3] gain=-4.7248(22)e-4 V/bit S_min=654.996 dof=254
-ai, unipolar zero offset, low gain
-offset nan, target 0
-caldac[1] gain=-7.4827(64)e-4 V/bit S_min=99.3453 dof=126
-caldac[2] gain=-9.6069(55)e-4 V/bit S_min=218.772 dof=139
-ao 0, zero offset, low gain
-offset 2.21(26)e-3, target 0.002442
-caldac[0] gain=-9.28(23)e-6 V/bit S_min=328.656 dof=254
-caldac[1] gain=-7.5226(22)e-4 V/bit S_min=422.159 dof=254
-caldac[3] gain=1.84(23)e-6 V/bit S_min=326.382 dof=254
-caldac[4] gain=-1.2601(22)e-4 V/bit S_min=320.864 dof=254
-caldac[5] gain=-8.1945(22)e-4 V/bit S_min=367.287 dof=254
-ao 0, reference voltage, low gain
-offset -1.18(29)e-3, target -0.001221
-caldac[0] gain=-9.47(22)e-6 V/bit S_min=308.124 dof=254
-caldac[1] gain=-7.5218(22)e-4 V/bit S_min=384.799 dof=254
-caldac[3] gain=2.05(22)e-6 V/bit S_min=343.072 dof=254
-caldac[4] gain=-1.5263(22)e-4 V/bit S_min=381.051 dof=254
-caldac[5] gain=-8.1969(22)e-4 V/bit S_min=404.001 dof=254
-caldac[6] gain=-9.961(23)e-5 V/bit S_min=384.348 dof=254
-ao 1, zero offset, low gain
-offset 3.17(27)e-3, target 0.002442
-caldac[0] gain=-9.68(23)e-6 V/bit S_min=242.019 dof=254
-caldac[1] gain=-7.5217(23)e-4 V/bit S_min=382.637 dof=254
-caldac[3] gain=2.03(23)e-6 V/bit S_min=316.857 dof=254
-caldac[7] gain=-1.2575(23)e-4 V/bit S_min=346.959 dof=254
-caldac[8] gain=-8.2102(22)e-4 V/bit S_min=505.935 dof=254
-ao 1, reference voltage, low gain
-offset -1.49(28)e-3, target -0.001221
-caldac[0] gain=-9.03(22)e-6 V/bit S_min=307.298 dof=254
-caldac[1] gain=-7.5231(23)e-4 V/bit S_min=423.217 dof=254
-caldac[3] gain=2.63(22)e-6 V/bit S_min=348.769 dof=254
-caldac[7] gain=-1.5238(23)e-4 V/bit S_min=375 dof=254
-caldac[8] gain=-8.2036(22)e-4 V/bit S_min=462.047 dof=254
-caldac[9] gain=-1.0066(22)e-4 V/bit S_min=326.815 dof=254
diff --git a/comedi_calibrate/results/pci-mio-16e-4 b/comedi_calibrate/results/pci-mio-16e-4
deleted file mode 100644 (file)
index cbae511..0000000
+++ /dev/null
@@ -1,133 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-Id: comedi_calibrate.c,v 1.34 2002/05/20 02:23:38 fmhess Exp 
-Driver name: ni_pcimio
-Device name: pci-mio-16e-4
-Id: ni.c,v 1.27 2002/06/06 01:21:10 ds Exp 
-Comedi version: 0.7.64
-ai, bipolar zero offset, low gain
-offset -0.017056(38), target 0
-caldac[2] gain=2.97(20)e-7 V/bit S_min=536.642 dof=254
-caldac[4] gain=-1.021835(57)e-3 V/bit S_min=54130.4 dof=254
-caldac[8] gain=-1.2997(61)e-5 V/bit S_min=26561.5 dof=254
-ai, bipolar zero offset, high gain
-offset 4.90(12)e-5, target 0
-caldac[2] gain=-4.44(99)e-9 V/bit S_min=257.513 dof=254
-caldac[4] gain=-5.11054(97)e-6 V/bit S_min=752.803 dof=254
-caldac[8] gain=-1.39886(10)e-5 V/bit S_min=1046.88 dof=254
-caldac[10] gain=-3.98(99)e-9 V/bit S_min=257.543 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.974130(91), target 5
-caldac[2] gain=-5.88644(75)e-4 V/bit S_min=28704.1 dof=254
-caldac[4] gain=-1.008968(58)e-3 V/bit S_min=60152.7 dof=254
-caldac[8] gain=-2.2137(72)e-5 V/bit S_min=21093.8 dof=254
-ai, unipolar zero offset, low gain
-offset 0.014652( 0), target 0
-caldac[1] gain=8.7(11)e-9 V/bit S_min=9911.87 dof=254
-caldac[2] gain=1.19214(16)e-3 V/bit S_min=19202.5 dof=134
-caldac[4] gain=-1.01499(14)e-3 V/bit S_min=27878.2 dof=137
-caldac[6] gain=6.0(11)e-9 V/bit S_min=7052.48 dof=254
-caldac[7] gain=-3.8429(11)e-4 V/bit S_min=31899.2 dof=157
-caldac[8] gain=-5.384(41)e-6 V/bit S_min=17989.9 dof=254
-caldac[14] gain=-8.0(19)e-9 V/bit S_min=4127.49 dof=254
-ao 0, zero offset, low gain
-offset -0.017094( 0), target 0.002442
-caldac[0] gain=-8.6(13)e-10 V/bit S_min=65747.1 dof=254
-caldac[1] gain= V/bit S_min=inf dof=254
-caldac[2] gain= V/bit S_min=inf dof=254
-caldac[3] gain= V/bit S_min=inf dof=254
-caldac[4] gain=-1.021999(59)e-3 V/bit S_min=50246.8 dof=254
-caldac[5] gain=-2.85(13)e-9 V/bit S_min=65278.1 dof=254
-caldac[6] gain=-7.78616(59)e-4 V/bit S_min=49456.5 dof=254
-caldac[7] gain= V/bit S_min=inf dof=254
-caldac[8] gain=-1.635(27)e-6 V/bit S_min=3285.84 dof=254
-caldac[9] gain=3.07(13)e-9 V/bit S_min=65196.1 dof=254
-caldac[10] gain=-1.17537(57)e-4 V/bit S_min=47442.2 dof=254
-caldac[11] gain= V/bit S_min=inf dof=254
-caldac[12] gain= V/bit S_min=inf dof=254
-caldac[14] gain= V/bit S_min=inf dof=254
-caldac[15] gain= V/bit S_min=inf dof=254
-ao 0, reference voltage, low gain
-offset -0.017056(38), target -0.001221
-caldac[0] gain=3.29(13)e-9 V/bit S_min=65108 dof=254
-caldac[1] gain=-1.65(13)e-9 V/bit S_min=65621.1 dof=254
-caldac[2] gain=3.21(38)e-9 V/bit S_min=21916.2 dof=254
-caldac[3] gain=7.0(13)e-10 V/bit S_min=65763.3 dof=254
-caldac[4] gain=-1.021806(59)e-3 V/bit S_min=51245.7 dof=254
-caldac[5] gain=1.17(25)e-9 V/bit S_min=33004.2 dof=254
-caldac[6] gain=-7.78596(58)e-4 V/bit S_min=53205.2 dof=254
-caldac[7] gain= V/bit S_min=inf dof=254
-caldac[8] gain=-1.867(28)e-6 V/bit S_min=4125.2 dof=254
-caldac[9] gain= V/bit S_min=inf dof=254
-caldac[10] gain=-1.40307(62)e-4 V/bit S_min=43005.2 dof=254
-caldac[11] gain=-1.28930(54)e-4 V/bit S_min=56133.7 dof=254
-caldac[12] gain= V/bit S_min=inf dof=254
-caldac[13] gain=5.3(13)e-10 V/bit S_min=65776.1 dof=254
-caldac[14] gain= V/bit S_min=inf dof=254
-caldac[15] gain=2.06(13)e-9 V/bit S_min=65524.7 dof=254
-ao 1, zero offset, low gain
-offset -0.012210( 0), target 0.002442
-caldac[0] gain=1.17(13)e-8 V/bit S_min=6259.83 dof=254
-caldac[1] gain=-1.15386(64)e-4 V/bit S_min=36386.4 dof=254
-caldac[2] gain=1.81(16)e-8 V/bit S_min=4700.21 dof=254
-caldac[4] gain=-1.021992(62)e-3 V/bit S_min=44024.4 dof=254
-caldac[6] gain=-3.52(75)e-9 V/bit S_min=10728.8 dof=254
-caldac[8] gain=-4.004(38)e-6 V/bit S_min=12914.5 dof=254
-caldac[9] gain=-7.74236(62)e-4 V/bit S_min=44441.8 dof=254
-caldac[11] gain=-7.3(13)e-9 V/bit S_min=6313.25 dof=254
-caldac[12] gain=-1.04(11)e-8 V/bit S_min=6997.1 dof=254
-caldac[15] gain=-7.8(14)e-9 V/bit S_min=5714.44 dof=254
-ao 1, reference voltage, low gain
-offset -0.012248(38), target -0.001221
-caldac[1] gain=-1.39443(61)e-4 V/bit S_min=40670.9 dof=254
-caldac[2] gain=8.47(44)e-7 V/bit S_min=346.812 dof=254
-caldac[4] gain=-1.021785(64)e-3 V/bit S_min=40319.8 dof=254
-caldac[5] gain=-1.28948(64)e-4 V/bit S_min=34383.6 dof=254
-caldac[8] gain=-1.5068(70)e-5 V/bit S_min=19726.7 dof=254
-caldac[9] gain=-7.74319(64)e-4 V/bit S_min=42090.3 dof=254
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, high gain
-caldac[4] gain=-1.021856(57)e-3 V/bit S_min=54116 dof=254
-caldac[4] gain=-5.11241(97)e-6 V/bit S_min=804.644 dof=254
-caldac[4] set to 112 (111.528)
-linear: ai, bipolar zero offset, high gain
-caldac[8] gain=-1.39852(10)e-5 V/bit S_min=1152.21 dof=254
-caldac[8] set to 137 (136.857)
-linear: ai, bipolar voltage reference, low gain
-caldac[2] gain=-5.88111(75)e-4 V/bit S_min=32338.3 dof=254
-caldac[2] set to 107 (107.032)
-linear: ai, unipolar zero offset, low gain
-caldac[7] gain=-3.8340(14)e-4 V/bit S_min=31150.3 dof=134
-caldac[7] set to 145 (145.125)
-linear: ao 0, zero offset, low gain
-caldac[6] gain=-7.81193(59)e-4 V/bit S_min=49408.3 dof=254
-caldac[6] set to 122 (121.992)
-linear: ao 0, reference voltage, low gain
-caldac[11] gain=-1.29021(55)e-4 V/bit S_min=51532.3 dof=254
-caldac[11] set to 152 (152.149)
-linear: ao 1, zero offset, low gain
-caldac[9] gain=-7.76801(61)e-4 V/bit S_min=45352.2 dof=254
-caldac[9] set to 127 (127.448)
-linear: ao 1, reference voltage, low gain
-caldac[5] gain=-1.28844(62)e-4 V/bit S_min=38678.7 dof=254
-caldac[5] set to 149 (148.733)
-ai, bipolar zero offset, low gain
-offset -2.366(54)e-3, target 0
-caldac[4] gain=-1.024297(58)e-3 V/bit S_min=54044.9 dof=254
-caldac[8] gain=-1.6330(79)e-5 V/bit S_min=12534.8 dof=254
-ai, bipolar zero offset, high gain
-offset -1.45(11)e-5, target 0
-caldac[2] gain=6.79(90)e-9 V/bit S_min=284.657 dof=254
-caldac[4] gain=-5.12071(98)e-6 V/bit S_min=692.976 dof=254
-caldac[8] gain=-1.40242(10)e-5 V/bit S_min=1141.14 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.998817(38), target 5
-caldac[2] gain=-5.88265(75)e-4 V/bit S_min=32107.8 dof=254
-caldac[4] gain=-1.010429(58)e-3 V/bit S_min=58701.3 dof=254
-caldac[8] gain=-7.231(55)e-6 V/bit S_min=9875.11 dof=254
-ai, unipolar zero offset, low gain
-offset nan, target 0
-caldac[2] gain=1.19139(15)e-3 V/bit S_min=20993.8 dof=141
-caldac[4] gain=-1.01645(20)e-3 V/bit S_min=21632.1 dof=106
-caldac[7] gain=-3.8376(15)e-4 V/bit S_min=27467.5 dof=133
-ao 0, zero offset, low gain
-Segmentation fault
diff --git a/comedi_calibrate/results/pci-mio-16xe-10 b/comedi_calibrate/results/pci-mio-16xe-10
deleted file mode 100644 (file)
index 956b588..0000000
+++ /dev/null
@@ -1,147 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-Id: comedi_calibrate.c,v 1.27 2002/02/20 20:17:11 ds Exp
-Driver name: ni_pcimio
-Device name: pci-mio-16xe-10
-Id: ni.c,v 1.13 2002/02/20 20:17:11 ds Exp
-Comedi version: 0.7.61
-ai, bipolar zero offset, low gain
-offset -6.13(14)e-3, target 0
-caldac[0] gain=1.13(11)e-7 V/bit S_min=329.737 dof=254
-caldac[2] gain=4.02947(14)e-4 V/bit S_min=1923.56 dof=254
-caldac[3] gain=4.233(12)e-6 V/bit S_min=318.032 dof=254
-caldac[8] gain=4.2482(72)e-7 V/bit S_min=382.585 dof=254
-ai, bipolar zero offset, high gain
-offset -3.6784(63)e-4, target 0
-caldac[0] gain=4.66(47)e-9 V/bit S_min=230.026 dof=254
-caldac[2] gain=4.03025(48)e-6 V/bit S_min=415.404 dof=254
-caldac[3] gain=3.908(47)e-8 V/bit S_min=294.563 dof=254
-caldac[8] gain=4.13959(30)e-7 V/bit S_min=312.685 dof=254
-caldac[10] gain=-1.26(29)e-10 V/bit S_min=314.773 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.990885(14), target 5
-caldac[0] gain=-4.5353(12)e-5 V/bit S_min=1710.04 dof=254
-caldac[1] gain=-2.528(12)e-6 V/bit S_min=345.49 dof=254
-caldac[2] gain=4.03051(14)e-4 V/bit S_min=1951.97 dof=254
-caldac[3] gain=4.037(12)e-6 V/bit S_min=300.966 dof=254
-caldac[8] gain=4.1921(73)e-7 V/bit S_min=334.401 dof=254
-ai, unipolar zero offset, low gain
-offset nan, target 0
-caldac[2] gain=4.03681(45)e-4 V/bit S_min=273.533 dof=99
-ao 0, zero offset, low gain
-offset -0.012720(15), target 0.00015259
-caldac[0] gain=1.60(12)e-7 V/bit S_min=255.994 dof=254
-caldac[2] gain=4.03024(14)e-4 V/bit S_min=2070.13 dof=254
-caldac[3] gain=3.979(12)e-6 V/bit S_min=334.723 dof=254
-caldac[6] gain=-7.8046(12)e-5 V/bit S_min=2531.75 dof=254
-caldac[8] gain=4.0988(74)e-7 V/bit S_min=312.704 dof=254
-ao 0, reference voltage, low gain
-offset -0.011089(16), target -7.62951e-05
-caldac[0] gain=1.12(12)e-7 V/bit S_min=302.906 dof=254
-caldac[2] gain=4.02999(15)e-4 V/bit S_min=1785.08 dof=254
-caldac[3] gain=4.018(13)e-6 V/bit S_min=376.668 dof=254
-caldac[4] gain=3.9056(12)e-5 V/bit S_min=772.527 dof=254
-caldac[6] gain=-7.7789(13)e-5 V/bit S_min=1591.34 dof=254
-caldac[8] gain=4.1246(79)e-7 V/bit S_min=318.688 dof=254
-ao 1, zero offset, low gain
-offset -9.532(12)e-3, target 0.00015259
-caldac[0] gain=1.45(12)e-7 V/bit S_min=334.497 dof=254
-caldac[2] gain=4.02939(14)e-4 V/bit S_min=1871.2 dof=254
-caldac[3] gain=4.099(12)e-6 V/bit S_min=326.813 dof=254
-caldac[7] gain=-7.7595(12)e-5 V/bit S_min=1008.57 dof=254
-caldac[8] gain=4.2170(73)e-7 V/bit S_min=298.23 dof=254
-ao 1, reference voltage, low gain
-offset -2.509940(15), target -7.62951e-05
-caldac[0] gain=2.3027(12)e-5 V/bit S_min=539.95 dof=254
-caldac[1] gain=1.377(13)e-6 V/bit S_min=263.307 dof=254
-caldac[2] gain=4.02753(15)e-4 V/bit S_min=2027.78 dof=254
-caldac[3] gain=4.202(13)e-6 V/bit S_min=318.557 dof=254
-caldac[5] gain=1.9813(12)e-5 V/bit S_min=369.468 dof=254
-caldac[7] gain=-7.7568(12)e-5 V/bit S_min=856.56 dof=254
-caldac[8] gain=4.2560(78)e-7 V/bit S_min=280.941 dof=254
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, 
-high gain
-caldac[2] gain=4.02968(14)e-4 V/bit S_min=2087.79 dof=254
-caldac[2] gain=4.03000(48)e-6 V/bit S_min=389.873 dof=254
-caldac[2] set to 152 (151.795)
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, 
-high gain
-caldac[3] gain=4.522(12)e-6 V/bit S_min=538.697 dof=254
-caldac[3] gain=3.964(47)e-8 V/bit S_min=258.691 dof=254
-caldac[3] set to 44 (43.7866)
-linear: ai, bipolar zero offset, high gain
-caldac[8] gain=4.14220(30)e-7 V/bit S_min=307.873 dof=254
-caldac[8] set to 2702 (2702.27)
-linear: ai, bipolar voltage reference, low gain
-caldac[0] gain=-4.5815(12)e-5 V/bit S_min=2677.17 dof=254
-caldac[0] set to 149 (149.15)
-linear: ai, bipolar voltage reference, low gain
-caldac[1] gain=-2.727(13)e-6 V/bit S_min=326.783 dof=254
-caldac[1] set to 50 (49.7007)
-linear: ao 0, zero offset, low gain
-caldac[6] gain=-7.8083(12)e-5 V/bit S_min=1706.23 dof=254
-caldac[6] set to 90 (90.086)
-linear: ao 0, reference voltage, low gain
-caldac[4] gain=3.9303(13)e-5 V/bit S_min=1926.15 dof=254
-caldac[4] set to 82 (82.3106)
-linear: ao 1, zero offset, low gain
-caldac[7] gain=-7.7881(12)e-5 V/bit S_min=1590.01 dof=254
-caldac[7] set to 131 (130.891)
-linear: ao 1, reference voltage, low gain
-caldac[5] gain=1.9950(12)e-5 V/bit S_min=807.589 dof=254
-caldac set out of range (125431>255)
-caldac[5] set to 125431 (125431)
-ai, bipolar zero offset, low gain
-offset 3.8(15)e-5, target 0
-caldac[0] gain=7.1(13)e-8 V/bit S_min=310.7 dof=254
-caldac[2] gain=4.02845(14)e-4 V/bit S_min=2030.42 dof=254
-caldac[3] gain=4.352(12)e-6 V/bit S_min=789.843 dof=254
-caldac[8] gain=4.4401(73)e-7 V/bit S_min=767.012 dof=254
-ai, bipolar zero offset, high gain
-offset 7.4(58)e-7, target 0
-caldac[2] gain=4.02821(48)e-6 V/bit S_min=428.869 dof=254
-caldac[3] gain=4.112(49)e-8 V/bit S_min=299.782 dof=254
-caldac[8] gain=4.14311(30)e-7 V/bit S_min=389.731 dof=254
-ai, bipolar voltage reference, low gain
-offset 4.999974(15), target 5
-caldac[0] gain=-4.5783(12)e-5 V/bit S_min=2807.92 dof=254
-caldac[1] gain=-2.789(13)e-6 V/bit S_min=318.904 dof=254
-caldac[2] gain=4.02874(14)e-4 V/bit S_min=1801.89 dof=254
-caldac[3] gain=4.452(13)e-6 V/bit S_min=622.676 dof=254
-caldac[8] gain=4.4500(77)e-7 V/bit S_min=711.933 dof=254
-ai, unipolar zero offset, low gain
-offset nan, target 0
-caldac[2] gain=4.03446(45)e-4 V/bit S_min=334.169 dof=99
-caldac[3] gain=4.001(31)e-6 V/bit S_min=99.5987 dof=95
-caldac[8] gain=3.69(23)e-7 V/bit S_min=22.661 dof=15
-ao 0, zero offset, low gain
-offset 6.0(17)e-5, target 0.00015259
-caldac[0] gain=5.8(14)e-8 V/bit S_min=413.608 dof=254
-caldac[2] gain=4.02823(15)e-4 V/bit S_min=1898.71 dof=254
-caldac[3] gain=4.330(12)e-6 V/bit S_min=554.527 dof=254
-caldac[6] gain=-7.8111(12)e-5 V/bit S_min=1717.37 dof=254
-caldac[8] gain=4.4508(76)e-7 V/bit S_min=663.271 dof=254
-ao 0, reference voltage, low gain
-offset -2.9(17)e-5, target -7.62951e-05
-caldac[1] gain=-5.8(13)e-8 V/bit S_min=330.279 dof=254
-caldac[2] gain=4.02791(15)e-4 V/bit S_min=1732.81 dof=254
-caldac[3] gain=4.443(13)e-6 V/bit S_min=564.931 dof=254
-caldac[4] gain=3.9328(13)e-5 V/bit S_min=1723.58 dof=254
-caldac[6] gain=-7.8098(13)e-5 V/bit S_min=1737.64 dof=254
-caldac[8] gain=4.4615(82)e-7 V/bit S_min=576.175 dof=254
-ao 1, zero offset, low gain
-offset 7.6(17)e-5, target 0.00015259
-caldac[0] gain=5.6(13)e-8 V/bit S_min=314.141 dof=254
-caldac[2] gain=4.02835(14)e-4 V/bit S_min=1841.77 dof=254
-caldac[3] gain=4.325(12)e-6 V/bit S_min=619.217 dof=254
-caldac[7] gain=-7.7899(12)e-5 V/bit S_min=1780.8 dof=254
-caldac[8] gain=4.4706(75)e-7 V/bit S_min=583.297 dof=254
-ao 1, reference voltage, low gain
-offset -2.497396(16), target -7.62951e-05
-caldac[0] gain=2.2787(12)e-5 V/bit S_min=786.36 dof=254
-caldac[1] gain=1.331(13)e-6 V/bit S_min=265.989 dof=254
-caldac[2] gain=4.02543(15)e-4 V/bit S_min=2372.65 dof=254
-caldac[3] gain=4.081(12)e-6 V/bit S_min=327.315 dof=254
-caldac[5] gain=2.0002(12)e-5 V/bit S_min=787.03 dof=254
-caldac[7] gain=-7.7783(12)e-5 V/bit S_min=1257.18 dof=254
-caldac[8] gain=4.1166(76)e-7 V/bit S_min=347.496 dof=254
diff --git a/comedi_calibrate/results/pci-mio-16xe-50 b/comedi_calibrate/results/pci-mio-16xe-50
deleted file mode 100644 (file)
index bb90259..0000000
+++ /dev/null
@@ -1,20 +0,0 @@
-Warning: device not fully calibrated due to insufficient information
-Please send this output to <ds@schleef.org>
-Id: comedi_calibrate.c,v 1.21 2001/10/10 22:07:53 ds Exp 
-Driver name: ni_pcimio
-Device name: pci-mio-16xe-50
-Comedi version: 0.7.61
-postgain: ai, bipolar zero offset, low gain; ai, bipolar zero offset, high gain
-caldac[2] gain=1.7354(14)e-5 V/bit S_min=1816.77 dof=254
-caldac[2] gain=1.6481(19)e-7 V/bit S_min=262.174 dof=254
-caldac[2] set to 4665.65
-caldac set out of range (4666>255)
-linear: ai, bipolar zero offset, high gain
-caldac[8] gain=1.79213(12)e-7 V/bit S_min=362597 dof=254
-caldac set out of range (6443>4095)
-caldac[8] set to 6442.78
-linear: ai, bipolar voltage reference, low gain
-caldac[0] gain=-4.3377(14)e-5 V/bit S_min=166907 dof=254
-caldac set out of range (-1133<0)
-caldac[0] set to -1132.76
-
diff --git a/comedi_calibrate/save_cal.c b/comedi_calibrate/save_cal.c
deleted file mode 100644 (file)
index f7b3fb9..0000000
+++ /dev/null
@@ -1,245 +0,0 @@
-/*
-comedi_calibrate/save_cal.c - stuff for saving calibration info to
-a file.
-
-Copyright (C) 2003  Frank Mori Hess <fmhess@users.sourceforge.net>
-
-This program is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as
-published by the Free Software Foundation; either version 2 of the
-license, or (at your option) any later version.
-
-This program is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program; if not, write to the Free Software
-Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-*/
-
-#define _GNU_SOURCE
-
-#include <stdio.h>
-#include <sys/types.h>
-#include <sys/stat.h>
-#include <unistd.h>
-#include <stdlib.h>
-#include <assert.h>
-#include <time.h>
-#include <string.h>
-
-#include <comedilib.h>
-
-#include "calib.h"
-
-void write_caldac( FILE *file, comedi_caldac_t caldac )
-{
-       static const char *indent = "\t\t\t\t";
-
-       fprintf( file, "%s", indent );
-       fprintf( file, "{\n" );
-       fprintf( file, "%s", indent );
-       fprintf( file, "\tsubdevice => %i,\n", caldac.subdevice );
-       fprintf( file, "%s", indent );
-       fprintf( file, "\tchannel => %i,\n", caldac.channel );
-       fprintf( file, "%s", indent );
-       fprintf( file, "\tvalue => %i,\n", caldac.value );
-       fprintf( file, "%s", indent );
-       fprintf( file, "}" );
-}
-
-void write_calibration_setting( FILE *file, comedi_calibration_setting_t setting )
-{
-       static const char *indent = "\t\t";
-       int i;
-
-       fprintf( file, "%s", indent );
-       fprintf( file, "{\n" );
-       fprintf( file, "%s", indent );
-       fprintf( file, "\tsubdevice => %i,\n", setting.subdevice );
-       fprintf( file, "%s", indent );
-       fprintf( file, "\tchannels => [" );
-       for( i = 0; i < setting.num_channels; i++ )
-               fprintf( file, "%i,", setting.channels[ i ] );
-       fprintf( file, "],\n" );
-       fprintf( file, "%s", indent );
-       fprintf( file, "\tranges => [" );
-       for( i = 0; i < setting.num_ranges; i++ )
-               fprintf( file, "%i,", setting.ranges[ i ] );
-       fprintf( file, "],\n" );
-       fprintf( file, "%s", indent );
-       fprintf( file, "\tarefs => [" );
-       for( i = 0; i < setting.num_arefs; i++ )
-               fprintf( file, "%i,", setting.arefs[ i ] );
-       fprintf( file, "],\n" );
-       fprintf( file, "%s", indent );
-       fprintf( file, "\tcaldacs =>\n" );
-       fprintf( file, "%s", indent );
-       fprintf( file, "\t[\n" );
-       for( i = 0; i < setting.num_caldacs; i++ )
-       {
-               write_caldac( file, setting.caldacs[ i ] );
-               fprintf( file, ",\n" );
-       }
-       fprintf( file, "%s", indent );
-       fprintf( file, "\t],\n" );
-
-
-       fprintf( file, "%s", indent );
-       fprintf( file, "}" );
-}
-
-int write_calibration_perl_hash( FILE *file, const comedi_calibration_t *calibration )
-{
-       int i;
-       time_t now;
-
-       now = time( NULL );
-       fprintf( file, "#calibration file generated by comedi_calibrate\n"
-               "#%s\n", ctime( &now ) );
-       fprintf( file, "{\n" );
-       fprintf( file, "\tdriver_name => \"%s\",\n", calibration->driver_name );
-       fprintf( file, "\tboard_name => \"%s\",\n", calibration->board_name );
-       fprintf( file, "\tcalibrations =>\n"
-               "\t[\n" );
-       for( i = 0; i < calibration->num_settings; i++ )
-       {
-               write_calibration_setting( file, calibration->settings[ i ] );
-               fprintf( file, ",\n" );
-       }
-       fprintf( file, "\t],\n"
-               "}\n");
-
-       return 0;
-}
-
-int write_calibration_file( calibration_setup_t *setup )
-{
-       FILE *file;
-       int retval;
-
-       assert( setup->new_calibration != NULL );
-       assert( setup->cal_save_file_path );
-
-       file = fopen( setup->cal_save_file_path, "w" );
-       if( file == NULL )
-       {
-               fprintf( stderr, "failed to open file %s for writing\n",
-                       setup->cal_save_file_path );
-               perror( "fopen" );
-               return -1;
-       }
-
-       DPRINT( 0, "writing calibration to %s\n", setup->cal_save_file_path );
-       retval = write_calibration_perl_hash( file, setup->new_calibration );
-
-       fclose( file );
-
-       return retval;
-}
-
-comedi_calibration_setting_t* sc_alloc_calibration_setting( calibration_setup_t *setup )
-{
-       comedi_calibration_setting_t *temp;
-
-       temp = realloc( setup->new_calibration->settings,
-               ( setup->new_calibration->num_settings + 1 ) * sizeof( comedi_calibration_setting_t ) );
-       assert( temp != NULL );
-       setup->new_calibration->settings = temp;
-       memset( &setup->new_calibration->settings[ setup->new_calibration->num_settings ],
-               0, sizeof( comedi_calibration_setting_t ) );
-
-       setup->new_calibration->num_settings++;
-
-       return &setup->new_calibration->settings[ setup->new_calibration->num_settings - 1 ];
-}
-
-void sc_push_caldac( comedi_calibration_setting_t *saved_cal, caldac_t caldac )
-{
-       int i;
-
-       /* check if caldac is already listed, in which case we just update */
-       for( i = 0; i < saved_cal->num_caldacs; i++ )
-       {
-               if( saved_cal->caldacs[ i ].subdevice != caldac.subdev ) continue;
-               if( saved_cal->caldacs[ i ].channel != caldac.chan ) continue;
-               break;
-       }
-       if( i < saved_cal->num_caldacs )
-       {
-               saved_cal->caldacs[ i ].value = caldac.current;
-               return;
-       }
-       saved_cal->caldacs = realloc( saved_cal->caldacs,
-               ( saved_cal->num_caldacs + 1 ) * sizeof( caldac_t ) );
-       if( saved_cal->caldacs == NULL )
-       {
-               fprintf( stderr, "memory allocation failure\n" );
-               abort();
-       }
-       saved_cal->caldacs[ saved_cal->num_caldacs ].subdevice = caldac.subdev;
-       saved_cal->caldacs[ saved_cal->num_caldacs ].channel = caldac.chan;
-       saved_cal->caldacs[ saved_cal->num_caldacs ].value = caldac.current;
-       saved_cal->num_caldacs++;
-}
-
-void sc_push_channel( comedi_calibration_setting_t *saved_cal, int channel )
-{
-       if( channel == SC_ALL_CHANNELS )
-       {
-               saved_cal->num_channels = 0;
-               if( saved_cal->channels )
-               {
-                       free( saved_cal->channels );
-                       saved_cal->channels = NULL;
-               }
-       }else
-       {
-               saved_cal->channels = realloc( saved_cal->channels,
-                       ( saved_cal->num_channels + 1 ) * sizeof( int ) );
-               if( saved_cal->channels == NULL )
-               {
-                       fprintf( stderr, "memory allocation failure\n" );
-                       abort();
-               }
-               saved_cal->channels[ saved_cal->num_channels++ ] = channel;
-       }
-}
-
-void sc_push_range( comedi_calibration_setting_t *saved_cal, int range )
-{
-       if( range == SC_ALL_RANGES )
-       {
-               saved_cal->num_ranges = 0;
-               if( saved_cal->ranges )
-               {
-                       free( saved_cal->ranges );
-                       saved_cal->ranges = NULL;
-               }
-       }
-       else
-       {
-               saved_cal->ranges = realloc( saved_cal->ranges,
-                       ( saved_cal->num_ranges + 1 ) * sizeof( int ) );
-               if( saved_cal->ranges == NULL )
-               {
-                       fprintf( stderr, "memory allocation failure\n" );
-                       abort();
-               }
-               saved_cal->ranges[ saved_cal->num_ranges++ ] = range;
-       }
-
-}
-
-void sc_push_aref( comedi_calibration_setting_t *saved_cal, int aref )
-{
-       assert( saved_cal->num_arefs < CS_MAX_AREFS_LENGTH );
-
-       if( aref == SC_ALL_AREFS )
-               saved_cal->num_arefs = 0;
-       else
-               saved_cal->arefs[ saved_cal->num_arefs++ ] = aref;
-}
-
diff --git a/comedi_calibrate/split_dumps b/comedi_calibrate/split_dumps
deleted file mode 100755 (executable)
index e703284..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/bash
-
-file=$1
-
-all=$(grep '^start dump' $file|sed 's/start dump //');
-
-for each in $all
-do
-       grep "^D$each:" $file|sed "s/^D$each: //" >$file.$each
-done
-
index 4740a18a1ac4bba20ec80e04c98823342b8e921b..bcc1ae532bd97c5cdf5444e8923e1c33763d6f90 100644 (file)
@@ -136,7 +136,6 @@ AC_SUBST(doccomedilibdir)
 
 AC_CONFIG_FILES(
 Makefile
-comedi_calibrate/Makefile
 comedi_config/Makefile
 etc/Makefile
 etc/pcmcia/Makefile