Q10087 Substituting DAP/iDSC paths using DAPcell software
I need to reconfigure the DAPcell software so that my application addresses my DAP boards correctly when I mount them in different hardware configurations. How do I do this?
When there is only one DAP unit present in a system, it is very
difficult to get into trouble. But when there are multiple DAPs present,
the identification of a board as Dap0, Dap1
etc. depends on
undefined rules within the Windows system. The names agreed upon by
DAPcell and Windows at boot time are the device names you must use to find
hardware devices. The rules are fixed, so you will always get the same
device ordering so long as you do not change your hardware or Windows
software. However, hardware changes such as using a different
motherboard model, flashing an updated BIOS version, or installing
in a different host computer can cause the numbering reported
by the Windows system to be different. The DAP software cannot change
how Windows works — consequently, an application's UNC paths might
work fine for one system but not in another, even when the hardware
configurations appear to be the same. (Refer to the
DAPIO32 Interface Manual [1] for more
information on UNC paths.)
Before committing to a solution, first consider whether the alternatives presented in article Q10105 or Q10106 are better for your situation:
If you are not under rigid constraints about where each DAP or iDSC board must mount, consider the solution presented in topic Q10105 [2], to first establish how the Windows system will order the boards, and then mount the boards consistent with that. Possibly, software coding or system configuration changes can be avoided. Even if this is not a complete solution, the repeatable hardware naming you gain will be helpful.
-
If you are upgrading your software to work with one system or with host systems that are completely identical, consider the solution presented in topic Q10106 [3]. You can mount your boards the way you want, and make simple patches to the application code, in one place, to redirect configurations to the correct board.
If neither of these solutions is desirable, topic Q10107 [4] describes how to modify the application code once so that it specifies a symbolic name instead of the actual path to DAP hardware. But after that, you need to modify the DAPcell installation on each system where the software is used, to "remap" actual DAP device paths in the DAPcell software, as described in the next section.
Mapping board addresses - an example
Suppose that your system has a DAP 5200a, a DAP 840, and an iDSC 1816. (This is an unlikely combination, but it makes the boards easier to find for purposes of this example.) Your Windows system currently identifies your DAP boards as follows.
- DAP5200a - name Dap0
at address \\.\Dap0
- DAP840 - name Dap1
at address \\.\Dap1
- iDSC1816 - name Dap2
at address \\.\Dap2
However, you wanted the boards to be addressed in your software as if they were in the following sequence.
- iDSC1816 -
at address \\.\Dap2
(via symbolic nameDAP0
) - DAP5200a -
at address \\.\Dap0
(via symbolic nameDAP1
) - DAP840 -
at address \\.\Dap1
(via symbolic nameDAP2
)
To do this, perform the following steps.
Go to Control Panel and run the Data Acquisition Processors control panel application [5].
Click on the
Browser
tab and review the identities of each of the boards in your system, so you know how your system has currently identified the boards.At the top of the window, select the
Mapping
tab, and then theDAP Mapping
button.Assign the DAP5200a board (\\.\Dap0) the symbolic name
DAP1
. Click-and-drag the nameDAP0
from the list on the left, dropping it into the space to the right ofDAP1
, in the column Mapped UNC Names.Assign the DAP840 (\\.\Dap1) the symbolic name
DAP2
. Click-and-drag the nameDAP1
from the list on the left, dropping it into the space to the right ofDAP2
.Assign the iDSC1816 (\\.\Dap2) the symbolic name
DAP0
. Click-and-drag the nameDAP2
from the list on the left, dropping it into the space to the right ofDAP0
. After this is done, each of the actual board addresses shown on the right will be associated with the symbolic names shown on the left.Close the Mapping window. Click "Yes" when prompted to write data to the registry.
Now, to establish pipe connections using this mapping, your application
should specify a DAP address that uses the symbolic names instead of the
normal UNC path. The DAPcell "client-side software" (DAPIO interface) will
replace the artificial names such as DAP0
with the proper UNC
addresses as entered in the table for board addressing.
Topic Q10107 [4] shows examples of using the
symbolic names in application software.
L11657
[2] Topic Q10105 Obtaining repeatable DAP hardware naming
[3] Topic Q10106 Redirecting DAP names in your software applications
[4] Topic Q10107 Using assigned DAP names with DAPcell software
[5] Data Acquisition Processor control panel application manual
[6] Topic Q10046 Configuring multiple board and networked applications, for advanced users