Recommendations for Setting up a Windows Data
February 15, 2015
This page is intended to serve as a resource
for myself, my clients, and the community when someone needs to
configure a Windows OS computer as a dedicated data acquisition
system. Obviously, not all of these recommendations apply
to every situation, and in fact these recommendations are
generally tuned to my own experience and my clients needs as of
the date noted above. In addition, these are only
recommendations, and Original Code Consulting accepts no
responsibility for any consequences of their application by a
third party not related to OCC. It is also recognized that
many additional recommendations could be suggested from others
with experience in this area, and those suggests are
welcome. Please send any such suggestions to
When a recommendation is followed by
two-letter abbreviations in bold, that indicates that that point
is a requirement for installing LabVIEW software I have provided
to specific clients. Any such client will have been
notified of their abbreviation in a separate
communication. Note, however, that MX
refers to data acquisition systems using MICAS-X,
and are therefore relevant to anyone who is using that program.
from a DVD rather than from online greatly facilitates
getting the proper modules installed.
use default installation options.
the 32 bit version of LabVIEW and drivers, even for 64 bit
generally best to select installation for evaluation, then
choose the modules you want, and register them later,
rather than have the modules chosen by serial number,
since the latter will often install many modules you don’t
need. (It is also possible to specify the serial
number but still choose just which modules to install.
That’s fine too.)
PID and Fuzzy Logic Toolkit under Simulation and
Control. MX JG VG UF
Install all Vision
modules (NI Vision Development Module and Vision Builder)
for systems integrating vision functionality. VG
Install Real Time, FPGA,
and related Xilinx modules for systems using cRIO, myRIO,
or other related hardware. JG VG UF
the installer to check with NI for updates if you are
connected to the internet.
install LabVIEW to its default location. E.g. you
need plenty of room on the C: drive.
versions of LabVIEW generally co-exist quite well on the
same computer. However, I strongly recommend
installing them in ascending order, oldest first.
installing the main LabVIEW modules, the installer will
ask for the Device Drivers DVD. Install all required
Device Drivers, including:
DAQmx for the version of LV being used
tend to DESELECT the NI-488 installation under Instrument
Control. This driver caused problems in older
versions of LabVIEW, and is only necessary if you plan to
use IEEE-488 interfaces to instrumentation.
LabVIEW has been installed, if it was done without a
serial number, run the NI License Manager from the Start
menu to register all the modules.
Shared Variables are being used, the firewall must be
adjusted to let them communicate, or the firewall must be
turned off completely. Check www.ni.com for more recent instructions
for the firewall adjustments, but as of November, 2016,
these instructions were sufficient: JG VG UF
allow the Shared Variables through Windows Firewall:
to the Advanced Settings for Windows Firewall.
up new rules to allow TCP and UDP inbound packets on
port 2343. Instructions say to allow
server-discovery broadcasts, but I couldn't find that
TCP ports 59110-59115. Instructions don't say if
it should be inbound or not, so I did rules for both.
One port must be opened for each "Application" for TCP
ports, so this will allow up to 6 applications using
UDP ports 6000 to 6010 for incoming packets.
the following programs through the firewall:
named all these rules "Shared Variables" so that they
could be searched for.
off automatic updates from the NI Update Service. To
do this, run “NI Update Service” from the National
Instruments folder in the start menu. Select
Preferences in the File menu. (Note that you may
have to wait for it to stop searching for updates before
you can change preferences.) Deselect “Enable
Periodic Checking”, and change “after downloading updates”
to “save updates”.
any LabVIEW program that uses Shared Variables, be sure to
remember to “Deploy” those shared variables at least once
when you put the program on a new computer.Once they are
deployed, the Shared Variable Engine on that computer will
if they have not been deployed even once, they will not
work on that computer.To deploy the Shared Variables, find their library
in the LabVIEW project, right click on it, and select
Deploy. JG VG UF
Avoid installing any
software or drivers that are not absolutely necessary for
the specific data acquisition task. E.g. it is
recommended that no one browse the web, play games, or
look at data in Excel or other programs while the computer
is acquiring data. The best way to prevent this is
to not install any such programs. This has the side
benefit of keeping the OS cleaner and the hard disk less
crowded. However, it is not recommended that you
uninstall Internet Explorer. Several National
Instruments tools are integrated with IE, and occasional
access to the internet can be invaluable.
disabling or uninstalling anti-virus software. Some
antivirus applications cooperate quite well with data
acquisition systems. Others can cause serious timing
glitches. Windows Security Essentials (now
deprecated by Microsoft) seems to behave fairly well.
It is uncertain if Windows Defender does or
not. Note that many organizations must comply with
their specific IT regulations in this regard, and removing
anti-virus protection may be contrary to those
turning Windows auto-updates off. In the past, there
have been times when an OS update caused a data
acquisition system to no longer operate, though this was
many years ago and recent updates have generally been very
configure auto-updates so that they will not reboot the
computer at their whim. This can be done by
configuring them to always ask before installing, or by
setting a registry parameter that prevents automatic
rebooting. Google “no reboot after auto update” for
the power options so that the screen and hard disk never
turn off when the computer is plugged in. Disable
all sleep and hibernate settings.
off screen savers.
off the “aero” graphics options.To do this, set
the DWM (Desktop Windows Manager) service to “Manual”
any unnecessary software, especially “free” and trial
programs that come preinstalled on many machines.
may also be helpful to review the services that are being
started by default, and perhaps remove some programs that
are starting unnecessary services, or set some services to
start on demand rather than at startup.
all indexing that the OS does.In Control
Panel, search for “index” and double click on that option.In the new
window, click on Modify, then deselect all directories
until no Included Options remain.Close the Modify
window and also deselect all check boxes in the main
very careful about what AC adapter is used with each
laptop. When an undersized or unrecognized power
supply is used with some Dell laptops, they can revert to
a low CPU frequency for power saving, and performance can
decline drastically. It may be useful to use the
AllCPUMeter gadget at AddGadgets.com to monitor the CPU
clock speed to help diagnose this issue. JG VG
It is a good idea to turn off
AutoRun and AutoPlay, since infected USB drives can spread
viruses just by being plugged in when this is on. To turn
these off, use Regedit to create or edit the DWord
"NoDriveTypeAutoRun" with a value FF hex, in
It may be necessary to create the Explorer folder if it
does not already exist.
critical that no one update the data acquisition computers’
OS or NI software without ensuring that they are following
prescribed guidelines. Applying any update before it
has been vetted can result in failure of the system to
operate correctly. Applying an update without
synchronizing with the entire group can create massive
maintenance issues. JG VG UF
and Routing setup (Shared Variables/Dual Network solution)
has been an ongoing issue where machines that use both
network adapters (wired and wireless) have difficulty with
LabVIEW Shared Variables. Generally the LabVIEW
devices are all on the wired network, and the wireless
network is used to connect to a wireless router with access
to the Internet, or other required services. There are
a few things that can be done to resolve this issue.
Microsoft’s great wisdom it was decided that wireless
network adapters, when present, will be elected the
“default” network adapter. The following
instructions will show you how to “promote” the wired
network adapter to be the “default” adapter:
Run…=> ncpa.cpl (this is just a quick way to get to the
Network Connections Adapter Setting page) => Press
Alt-n-s (or Alt, then select Advanced menu->Advanced
Settings…). In the “Connections” box on the
“Adapters and Bindings” tab Move the “Local Area Connection”
to the top of the list by highlighting it and using the up
arrow buttons on the right of the window. I also suggest
moving any VPN connection just below the top item followed
by the “Wireless Network Connection” that corresponds to the
actual Wireless network card, followed by any“virtual”
wireless connections (“Wireless Network Adpater X” which are
labeled as Microsoft Virtual WiFi Miniport Adapters when
viewed in the “Network Connections” window). Remote
Access Connections and any other connections should come
last. Click the “OK” button.
there is an “Instrument” network that is not connected
to the internet (or another network via a router), the
DEFAULT GATEWAY should NOT be set. I also
recommend removing or disabling the TCP/IPv6 protocol
for all adapters that don’t need it. The following will
only work if the computer is configured with a static IP
Run…=> ncpa.cp l=> right click on the wired network
adapter (LabVIEW devices, not internet connected) =>
Properties => uncheck “Internet Protocol Version 6
(TCP/IPv6)”. Highlight “Internet Protocol Versoin 4
(TCP/IPv4) with the mouse and press the “Properties” button
=> under “Use the following IP address:” Delete all
numbers in the “Default gateway:” box. Press OK to close the
IPv4 Properties, and OK again to close the Properties
we will manually override the network “Cost” (i.e.
METRIC) of all active network adapters to help
prioritize the computer’s routing table for the wired
network adapter. Should any conflict arise, this
may help keep LabVIEW traffic flowing over the wired
network. For each active network adapter, follow
the instructions below to manually override the
Connection’s Metric. I suggest the following
“Local Area Network” connection(LabVIEW) : Metric 10
Adapter (if present): 1500
Network Adapter Connection (i.e. the actual wireless card):
other active connections, just increment from the Wireless
Network by 500...
get to these settings:
=> ncpa.cpl => right click on the connection =>
Properties => select TCP/IPv4 protocl => Properties
=> Advanced… => uncheck “Automatic metric” => enter
the appropriate value (see above). click OK to close
the “Advanced TCP/IP settings,” OK to close the “TCP/IPv4
Properties,” and OK again to close “XXX Connection
permanent static routes. I believe this step is
not necessary, and I recommend only trying this after
implementing 1-3 above if you are still having issues
with shared variables. Setting permanent static
routes could lead to confusion down the line if a
computer is repurposed for another task using different
network settings and someone doesn’t remember to delete
the static routes.
=> All Programs => Accessories => right click on
“Command Prompt” and select run as Administrator.
Click Yes to allow UAC to run the program with
Administrative privileges. This example assumes that
the wired network connection uses a statically assigned
network address of 192.168.1.50, and that using the command
shown in 5 below you determine that the wired ethernet
adapter is interface 11:
add -p 192.168.1.0 mask 255.255.255.0 metric 10 IF 11
“-p” makes this a persistent route that survives a reboot.
You can test a route add statement without the -p.
If it causes problems, rebooting or shutting off and
restarting the computer should clear that route. If
you want to remove the persistent rout entered above you
could use the following command:
- A useful command prompt command to look at the routing
table, and to determine the interface number for a
Windows 10 Issues
changes, Windows 10 has locked down the options for how
Windows Updates are installed. Without going in to more
advanced settings, one cannot prevent the computer from
rebooting on its own after an update. One way to prevent
this in Windows 10 is as follows:
1. Search for Group Policy in the Control
Panel. This should launch the Local Group Policy Editor.
2. Under Administrative Templates, expand
Windows Components. Then click on Windows Update.
3. In the left pane, double click on
Configure Automatic Updates. This opens another dialog box.
4. Select Enabled near the top.
5. Select "3 - Auto download and notify
for install" or whichever option is most appropriate for
your system in the lower left.
6. Click on OK.
7. These changes will not take effect
until the system checks for Windows Updates once. To force
this check, search for Windows Update in the Control Panel,
then press the "Check for updates" button.
If the above configuration is used,
updates will be downloaded to the computer in the
background, but only installed when the operator chooses.
For some systems, it may be better to prevent updates from
being downloaded completely. Note that with this tweak, the
OS will still enforce a reboot within a few days after you
allow it to install an update.
the OS from ever rebooting the computer when a user is
logged in, launch gpedit.msc from a cmd window. Navigate to
Templates/Windows Components/Windows Update. Double click on
"No auto-restart with logged on users for scheduled
automatic updates installations". Enable it and click apply.
This can done by editing the registry using Regedit and
making the key
NoAutoRebootWithLoggedOnUsers (DWORD) have a value of 1.
report any bad links, other problems, or comments