From 08:00 PM CDT Friday, August 12 - 01:00 PM CDT Saturday, August 13, will be undergoing system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Multifunction DAQ

Showing results for 
Search instead for 
Did you mean: 

PCI-6704 Calibration

Hi there,


My PCI-6704 is slightly out of tolerance (tested by Keithley DMM 2000) and I tried to follow the Calibration Procedure of PCI-6704 to recalibrate the card using NIDAQ API for VC 2005. I got stuck in step 8 where the manual says "repeat step 7 with various values in _cal_ao_voltage_offset until you have generated approximately 0V on AO 0(V)." Firstly, what are the typical values to use? I tried to input "various values" and the card got even worse. I suppose that I have input the wrong values. I wonder if there are some typical values for reference. In addition, what are the typical values to use in step 10? Similar questions for the _cal_ao_current_offset and _cal_ao_current_gain?



0 Kudos
Message 1 of 5



If you have used this board for more than one year,


We suggest you send this board to NI for calibration. ( self-calibration is not enough )



0 Kudos
Message 2 of 5

The output is only slightly out of tolerance. e.g. I asked the card to ouput 9.9V and it gave 9.89904. I can live with this minor issue and I don't think I will spend lots of money for this minor adjustment. In addition, I think NI should give their users the typical values for calibration if they are willing to give users the calibration procedures instead of giving users just "various values".  Don't you think so?

0 Kudos
Message 3 of 5

For the offset adjustment, the basic setup is to first create a task to set the output of AO0 to 0.0V.  Then, create a task that writes values to the "_cal_ao_voltage_offset" channel.  The value that you write typically corresponds to the offset, so if you see an offset of +0.001V, try writing -0.001V to the AO offset channel.  The correlation isn't exact, so once you are close you'll want to increase or decrease the values by small amounts until you've achieved the smallest offset.  Depending on the age of your card, you may not be able to perfectly remove the offset.


For example, when I ran this at my desk, I started by writing an offset of 0V.  The output that I read from my DMM showed +0.4V.  So I then wrote -0.4 to the offset channel, which gave me a value of ~0.00010V.  Further fiddling with the number at this point didn't help much, since I was below the noise threshold of the card anyway.


Let me know if you are still having issues with this setup.

Seth B.
Principal Test Engineer | National Instruments
Certified LabVIEW Architect
Certified TestStand Architect

Engineers like to solve problems. If there are no problems handily available, they will create their own.
0 Kudos
Message 4 of 5

Seth, thanks for your reply. The problem I encountered is the offset of the card is very small around 0.000005V (checked by Keithley DMM 2000 6.5 digit accuracy) and I am happy with this offset. However, when I tried to ouput 9.9V and -9.9V the card output voltages slightly out of the specification (24-Hour limits). Therefore, I tried to adjust the _cal_ao_voltage_gain. No matter what values I gave, it seems that it just got worse. Therefore, I am curious about what are the typical values should be. For example, the card gave an output of 9.89904 when I commanded it to output 9.9V. I tried to enter 9.91 and the card may give me around 10V or even larger. It does NOT seem to converge no matter what values I entered. I wonder if there is any explanation for how the calibration procedure is designed so that I can have a guide to follow. Thanks!

0 Kudos
Message 5 of 5