In industrial process control, servo drive, sensor excitation, and testing equipment calibration scenarios, high-precision isolated analog output cards are a key link connecting digital controllers and field actuators. When engineers face the need for multi-channel voltage/current output and the need to resist common mode interference in industrial sites, the ADLINK PCI-6308 series provides a proven solution. This article focuses on PCI-6308V (8-channel isolated voltage output) and PCI-6308A (voltage+current output), and systematically outlines the key points of full stack deployment from hardware architecture, jumper configuration, wiring specifications, driver installation to C/C++underlying programming interfaces. It also provides troubleshooting logic for typical faults to help the project quickly land.
Overview of product family and selection criteria
The PCI-6308 series includes three models:
PCI-6308V: 8-channel 12 bit isolated voltage output card, supporting three ranges: ± 10V bipolar, 0-10V unipolar, and user-defined unipolar (0 to external reference voltage).
PCI-6308A: Equipped with EXP-8A daughter board on the basis of PCI-6308V, it provides an additional 8 isolated current outputs (0~20mA, 4~20mA, 5~25mA software programmable), with synchronous voltage and current output changes, suitable for transmitter simulation and valve positioner drive.
PCI-6304V: 4-channel simplified version voltage output card, suitable for situations with fewer channels.
Core advantage: Provides 3750Vrms isolation voltage between the analog output channel and the PC system (2500Vrms for digital I/O), effectively protecting the host from on-site high-voltage surge impact; The onboard DC-DC converter provides ± 15V auxiliary power supply for external sensors; The entire series supports the universal 3.3V/5V PCI bus (0A5 version) and is compatible with both old and new industrial computers.
Typical Applications:
4~20mA loop power supply and control for pressure/temperature transmitters;
Servo driver analog command input (± 10V speed/torque command);
Programmable voltage/current source in testing equipment;
Current driven industrial process control valves.
Detailed explanation and selection reference of electrical specifications
Voltage output (all models)
Resolution: 12 bits (no missing code, guaranteed 11 bits), corresponding to digital values of 0~4095 at full scale;
Establishment time: 10 μ s (-10V to+10V jump), DA update time single channel 13.96 μ s;
Drive capability: ± 20mA (maximum), can directly drive most instrument loads;
Gain error: ± 1LSB (typical, internal 10V reference not adjusted);
Differential nonlinearity: ± 0.2LSB;
Output power on/reset initial state: 0V (safety default).
Current output (only PCI-6308A)
Converter: B.B. XTR110 precision V/I converter;
Output range: 0~20mA, 4~20mA, 5~25mA (controlled by software registers);
Establishment time: 17 μ s (0-20mA step), slew rate of 1.3mA/μ s;
Non linearity: ± 0.01% range, initial range error of 0.3%;
Output impedance: maximum 10 Ω, can be used as a pure current source;
Power on/reset initial state: 0mA.
Isolated digital I/O (all models)
4-channel isolated digital input: withstand voltage 34V, logic high ≥ 3.2V, low ≤ 3.0V, input impedance 2.4k Ω;
4-channel isolated digital output: open collector transistor, withstand voltage of 35V, maximum current of 50mA (note that external pull-up resistor and freewheeling diode need to be connected).
Auxiliary power output (provided by CN1 connector)
± 15V each, PCI-6308V can provide ± 200mA, PCI-6308A is rated to ± 20mA due to the power consumption of the onboard current source (when all current channels output 25mA).
Environment and power consumption
Working temperature 0~55 ℃, storage -20~80 ℃, humidity 5~95%, no condensation;
Connector: 37 core D-Sub female socket;
Power consumption: PCI-6308V+ 5V@220mA + + 12V@175mA PCI-6308A is+ 5V@220mA + + 12V@250mA If all current channels are fully output and+12V rises to 530mA, the power supply capability of the PC must be ensured.

Hardware installation and jumper configuration
3.1 Unpacking inspection and anti-static treatment
The package includes: board, user manual, software installation guide, ADLINK full-featured CD (including drivers and examples). When removing the board, be sure to operate on a grounded anti-static pad, wear a wristband, and avoid touching the gold fingers and IC pins. If obvious physical damage is found, do not turn on the power.
3.2 Installation steps
Turn off the industrial computer and all peripherals, unplug the power cord;
Open the chassis and select an available 32-bit PCI slot (white or ivory, short slot);
Set the jumper according to the application requirements (see below), insert the board, ensure it is fully seated, and fix it on the chassis stopper with screws;
Connect the 37 core D-Sub cable to the matching terminal board (ACLD-9137 universal screw terminal board or DIN-37D DIN rail installation terminal board is recommended), and the terminal board provides clear wiring identification;
Close and power on again.
3.3 Detailed explanation of jumper settings (key)
Each voltage output channel of PCI-6308 can be independently configured with output range and reference source, corresponding to the following jumper groups:
Channel mode jumper (single/double pole) reference source jumper (internal/external)
CHO~CH3 JP1~JP8 correspond to JP9 and JP11 respectively (shared)
CH4~CH7 are the same as JP10 and JP12
Output range setting (refer to Table 2-3):
± 10V Bipolar (default): JP1~JP8 are set to "Bipolar" (jumper cap connecting pins 1-2), JP9/JP10 are set to "Bipolar", JP11/JP12 are set to "Internal" (internal 10V precision reference REF102).
0~+10V unipolar: JP1~JP8 are set to "Unipolar", JP9/JP10 are set to "Unipolar", and JP11/JP12 are still set to "Internal".
0~Custom voltage (0 to Vuser): Set JP1~JP8 as "Unipolar", JP9/JP10 as "Unipolar", JP11/JP12 as "External", and connect an external reference voltage (up to ± 15V) from pin 6 (ExtVref) of CN1. At this point, output the external reference voltage value corresponding to the full range.
Important reminder: Changing jumper wires must be done in a power-off state; The reference source and polarity of the same channel need to be matched. For example, although the combination of external reference and bipolar is physically feasible, it has no practical significance. It is recommended to strictly configure according to the table.
Definition of connector pins and wiring specifications
CN1 is a 37 core D-Sub female socket, and the key pins are defined as follows (see Table 2-1 in the manual for details):
V0-V7 (pins 1-8): Voltage output of each channel;
A0~A7 (pins 9~16): Current output (only valid for PCI-6308A);
AGND (pins 17-19): analog ground;
+15V (pin 7? Actual inspection - pay attention to the pin numbers in the manual, but to avoid miscitation, it is recommended to directly refer to Figure 2-3, which is not listed here in its entirety.
-15V (pin 25), ExtVref (pin 6), DI0~DI3,DO0~DO3,DIGND,DOGND。
Attention to wiring:
The voltage output is a low impedance source that can be directly connected to high impedance loads (such as PLC analog inputs), but avoid short circuiting to ground or power, otherwise it may damage the operational amplifier;
The current output (PCI-6308A) is a current source, and the load should be connected between An and AGND. The maximum load resistance should meet the requirement of R_load ≤ (V_supply-2V)/20mA (for example, when powered by 24V, the maximum load is about 1.1k Ω);
The digital output is an open collector and must be connected to an external power source (maximum 35V) with a pull-up resistor. When the output is low, a current is injected, and a current diode is connected to drive the relay;
Digital input can accept NPN/PNP sensors, pay attention to the polarity of DI and DIGND, and input high level ≥ 3.2V.
Windows System Driver Installation and Device Recognition
PCI-6308 adopts a standard PnP controller, which automatically assigns I/O base addresses and interrupts after system startup. At first installation:
Insert the ADLINK full-featured CD into the optical drive, or download the latest PCIS-DASK driver package from the official website;
After Windows discovers new hardware, select "Install in specified location" and point to the " PCI-6308 Driver" directory on the CD;
After completing the driver installation, resources (I/O range IRQ);
If you need to use software packages such as LabVIEW, HP VEE, DASYLab, InTouch, ISaGRAF, OPC, etc., you need to install the corresponding additional drivers from the CD (some require authorization codes, but provide a 2-hour trial mode).
Note: PCIS-DASK provides DLL dynamic libraries and supports Windows 98/NT/2000/XP (later systems can run in compatibility mode). All applications can be cross version compatible without modification.

Detailed explanation of underlying programming interfaces (C/C++library)
For applications that require custom firmware or high-performance control, ADLINK provides a fully functional C language library (DOS and Windows 95 DLLs, but PCIS-DASK also includes these APIs). The following focuses on the core functions and usage points. All function names follow the _6308_ action format and the Windows version prefix W_.
6.1 Initialization and Reset
_6308_Initial (U16 * existCards, PCI_INFO * pciInfo): must be called before any operation. It is used to enumerate the number of board cards and obtain PCI information, and return the card number for subsequent calls.
_6308_Software2Reset (U16 cardNo): Soft reset I/O configuration, does not change jumper hardware settings, resets D/A output to zero (0V/0mA), and clears digital output to zero.
6.2 Single channel analog output
_6308-DA (cardNo, chn, DAData): Write 12 bit data (0~4095) to the specified channel. According to the jumper configuration, the mapping relationship is as follows:
± 10V mode: 0 → -10V, 2048 → 0V, 4095 →+9.9997V;
0~10V mode: 0 → 0V, 4095 →+9.9997V;
External reference mode: 0 → 0V, 4095 →+User.
Key constraint: DA conversion adopts serial loading, and each data write requires approximately 13.96 μ s of transmission time. During this period, the status register "Data_Send" is set to 1, and the software must poll _6308_Set_Status() until it returns 0 before sending the next data. Ignoring this step will result in output confusion.
6.3 Multi channel synchronous output
_6308_CA_0_3 (cardNo, DA0-Data, DA1_Data, DA_2Data, DA3-Data): Simultaneously updates channels 0~3 to ensure synchronization, suitable for multi axis servo synchronization commands;
_6308_CA_4_7 (...): Similarly, update channels 4-7.
The synchronous output is still constrained by the serial transmission timing internally, but the function has already processed the waiting state internally. After calling, it needs to be appropriately delayed or checked for status.
6.4 Digital I/O
_6308-DI (cardNo, * DIData): Read the status of 4 isolated inputs, with the low 4 bits corresponding to DI0~DI3, and the high 4 bits reading back the current digital output value (can be used for output read back verification);
_6308-DO (cardNo, DOData): Write 4 outputs, only the lower 4 bits are valid (values 0~15).
6.5 Current Range Control (PCI-6308A only)
_6308_S2V_Control (cardNo, ctrl) - Note that the manual states it as _6308_12V_Control (but it should actually be I2V, i.e. current voltage?)? The original function name is _6308_12V_Control, but it is described as voltage current mode control. Parameter ctrl optional:
I-0to20mA (0): Input 0~10V corresponds to 0~20mA;
I2 to 20mA (1): Input 0~10V corresponding to 4~20mA (zero transition);
I2 to 25mA (2): Input 0~10V corresponding to 5~25mA (extended range).
This function changes the output range of all 8 current channels, but does not affect the voltage output channel.
Operational Theory and Common Traps
7.1 Voltage output establishment and accuracy
The internal reference REF102 temperature drift is only 2.5ppm/℃, but the offset voltage of the peripheral resistor and operational amplifier OPA2134 may cause zero offset. If higher accuracy is required, calibration can be performed in the software (recording the measured voltage at 0 points and full range, and fitting correction).
When driving capacitive loads, it is recommended to connect a small resistor (such as 100 Ω) in series to suppress ringing.
7.2 Current output load limit
XTR110 requires external power supply (via onboard+15V or external connection), and when the load resistance increases, a higher loop voltage is required. On board+15V may not be sufficient for total current output, it is recommended to connect an external 24V power supply to the load circuit (but be careful of isolation). For 4-20mA, the typical load can reach 500 Ω (24V power supply).
The initial power on current is 0mA, which gradually changes after software setting to avoid startup shock.
7.3 Isolation precautions
The ground (AGND) on the analog output isolation side is completely isolated from the PC digital ground, but multiple channels share the AGND. Therefore, AGND should not be mixed with other isolated power sources to avoid damaging the isolation effect.
The digital input/output have independent isolation grounds (DIGND, DOGND), which need to be separately led out during wiring and cannot be short circuited.
Common troubleshooting process
Fault phenomenon 1: The device manager did not detect any new hardware
Check if the power supply of the PCI slot is normal (replace the slot for testing);
Confirm that "Plug&Play OS" is enabled in the motherboard BIOS;
If the 0A5 version (supporting 3.3V) is inserted into the old slot with only 5V, the voltage standard needs to be checked.
Fault phenomenon 2: The analog output is fixed at 0V or full bias and does not change with the program
Check if the jumper settings are correct, especially the reference source and polarity of JP9~JP12;
Measure whether the internal reference REF102 output is+10V (pin 6 pairs AGND);
Call _6308_Set_date to confirm if the write was ignored due to incomplete previous transmission.
Fault phenomenon 3: No change in current output or constant 0mA
Confirm that the board is PCI-6308A (PCI-6308V with no current output function);
Check if the _6308_S2V_Control has been set correctly and the corresponding voltage output channel has been written with the corresponding value (current driven by voltage);
Measure whether the external load connection is correct (between An and AGND) to ensure the integrity of the circuit.
Fault phenomenon 4: Digital output cannot drive relay
Confirm the external pull-up resistor and power supply (DO is an open collector and must be plugged in);
Check if DOGND is connected to the external power supply ground;
Measure whether the input current exceeds 50mA when the output is low, and if it is overloaded, protect the transistor.
Fault phenomenon 5: When multiple channel outputs jump simultaneously, they are not synchronized
Use the synchronization functions of _6308_CA_0_3 and _6308_CA_4_7 to avoid the time difference caused by channel by channel writing.
Maintenance and technical support information
Regularly check the fastening of terminal board screws to avoid vibration loosening;
If you need to replace the board, please turn off the power and discharge static electricity first;
The driver program and sample code can be downloaded from the ADLINK official website (PCIS-DASK package), and the PCIS-DASK/X shared library can be selected for Linux environments.
When encountering unsolvable problems, collect the following information to ADLINK technical support( service@adlinktech.com report
Board model (PCI-6308V or PCI-6308A) and serial number;
Operating system version, motherboard model, CPU and BIOS version;
The development environment and driver version used;
Can it be replicated on other PCs.
