Maximum latency to read/write for PCI-DIO-32HS with NOR-DAQmx?

I was asked to evaluate using the PCI-DIO-32HS and NOR-DAQmx on MacOS X to essentially close a control loop.  My first concern is whether or not it can run fast enough.

So my questions are: what is the maximum latency from the moment of receiving a signal strobe reading data from external hardware, then read a single 16-bit sample and sending it upward by NOR-DAQ to a user space application?  And, similarly, what is the maximum latency of sending a unique 16-bit value from a space application user down through NOR-DAQ, then write a port and affirming a strobe signal of external-data writing material?

Thank you.

Hi AliasMe,

Thanks for posting and welcome to the Forums EITHER!

Do you need to process the data in the software and generate a value on this basis?  DIO-32HS (alias PCI-6533) offers in the buffer of inputs and outputs, but you'd have a latency in your control system relying on the OS to do treatment.  Since this period is dependent on the system, I can't give a specification for the amount of time it would take.  However, integrating data in memory, processing and writing back to the card would likely be on the order of several milliseconds.

Generally, we recommend FPGA in situations of control like this, so you can do all the processing in hardware.  However, if provide you more details on your request we can look into all the options available.


Tags: NI Hardware

Similar Questions

  • PCI-DIO-32HS on Windows 7?


    Is it possible to use the PCI-DIO-32HS with Windows 7?  If so, can you direct me to the correct driver to install?

    Thank you.

    Hi aaron.cramer

    There is a traditional DAQ driver for Windows 7. The driver does not work for 64-bit operating systems.

    This link describes the limitations of the driver and download links:

  • How to read/write tdms 2.0 files with the TDM C DLL?


    How to read/write tdms 2.0 files with the TDM C DLL?

    How consequently the datas in interlaced with the TDM C DLL mode?

    Thank you

    Confirmation: TDM C DLL always wrote the file in TDMS version 2.0.

  • How to calibrate the PCI-6110 with NOR-DAQmx


    I am a new user of the PCI-6110 Council tries to run the calibration using LabVIEW procedure. I look at the document "Calibration" on the page of the manuals for the Board of Directors, 28locale % 3Aen % 29 + AND + % 28phwebnt % 3 A 1081 + OR + phwebnt % 3 A 7075% 29 + AND + 28nicontenttype % 3Aproductmanual % 29 + AND + % 28docstatus % 3Acurrent % 29% 20RANK % 20nilangs: en & title = NOR + PCI-6110 + manual

    One of the first steps in the document is to call the AI_Configure command to set the input mode, beach, etc. I'm using LabVIEW 8.5 with the NOR-DAQmx software, and I can not find the command (which, in LabVIEW, seems to be "AI") anywhere. The calibration paper was written in 2003, and I gather from Google searches (please, correct me if wrong) that this command is actually a part of NOR-DAQ traditional, who was replaced by driver OR DAQmx.

    My question is this: what is the equivalent to AI_Configure command in the latest software? Is it perhaps a subsequent document describing how to calibrate using NOR-DAQmx?

    Thanks much for any help.

    Tom McLaughlin

    Hi Tom,

    The calibration Procedure series B, E, M, S, which is also linked from this page, describes how to calibrate the PCI-6110 with NOR-DAQmx.


  • How to choose destinations for counter/timer signals in NOR-DAQmx?

    In the document M Series DAQ
    M series user manual
    622 x, NI 625 x and the materials NOR x 628
    M series user manual
    July 2008
    371022K - 01

    appears on page 7-30:

    Counter/Timer default pinout
    By default, NEITHER-DAQmx routes counters/timers and outputs inputs to the PFI pin, shown in table 7-4.
    Table 7-4. 68 peripheral pins by default Counter/Timer pines NOR-DAQmx
    Counters/timers fail-safety connector 0 PIN (name)
    0 2 CTR (PFI 12)

    You can use these default settings or select other sources and destinations for the
    counters/timers of NOR-DAQmx signals. Refer to the connection counter signals
    in the NOR-DAQmx help or the help of LabVIEW in version 8.0 or later for
    more information on how to connect your signals for common counter
    measures and generations.

    I couldn't find any hint to the appropriate command of DAQmx in the "NOR-DAQmx C reference Help" to select other destinations for counter/timer signals in NOR-DAQmx.
    Please can you tell me the DAQmx command right? Thank you very much.
    I use the NI USB-6259 M material Series DAQ, BNC end unit.


    If I remember correctly, you can "free" the output terminal of default counter by calling DAQmxSetCOPulseTerm and passing an empty string in the 'data '.

    Hope that helps,


    Edit: You can also set this to any other valid terminal (IE... "Dev1/PFI0") and to send the output to.

  • Maximum speed of read/write taken supported Sony Xperia Z2 for MicroSD cards

    I am looking to buy a microSD for my Xperia Z2 phone (6503). My question is: how fast it can write data to an SD card. For all I know, these speeds are dependent on the controller of the SD card. If I'll know it approximate numbers I can acquire an adequate microSD card. Right now I'm trying to decide between: SanDisk SDSDQX - 064 G-U46A Extreme Plus 64 GB - 80 MB / s GB SanDisk SDSDQUA - 128 G-G46A 128 Ultra - 30 MB/s write for these microSD cards speeds half accelerated indicated reed are numbers. I like 128 GB Ultra card capacity, but would not hesitate to buy faster 64 GB card of more extreme.

    If you use 4K as recording features, you may need to get a high speed SD! (go to the Maximum speed you can)

    So I think that like extreme would be preferable in this case, but if your phone is what use you (like me) the maximum capacity (which has better speed as well, if not useless) I use a class 10 128 Go!

    Like many, I know, I think that same 30 MBP will be sufficient for a 4K video!

  • Find ratios of read/write for each VM?

    Peers learned Hello!

    Our primary SAN is optimized, most being read/write of 70/30.  I know I have a few loads of work that look more like 90/10.  There are others who are closer to 30/70 and 50-50...  So, I am trying to identify the various reports of workload of SAN for my virtual machines...  Then I can size a storage solution of good writing optimized for specific virtual machines.

    Keeping in mind that there are between 10-20 VM by volume, looking at the SAN, or the actual data store would not help a lot. -I guess I could create a new volume and move the virtual machine to her one at a time and see what these statistics look like... but that sounds like a big pain.

    I'm not asking how to put in place a hierarchical, I have nothing to level with again!

    Details: cluster 5 hosts / ESXi 5.5 / 5.5 vCSA / SAN PS6500ES Equallogic on 1 GB iSCSI



    Take a look at this:

    Get the the OPS are / maximum s - notes LucD

    Best regards


  • PCI-DIO-32HS error FFFCB820 (-215008)

    DAQmx beginning gives this unknown error. What can it mean?

    I'm under task of digital acquisition with burst (output clock) with an external device, data transmission. Alone, it works fine.

    Then I need to measure the time after the end of playback (PFI6 = Dig0/ReadyForTransfer falling edge) to digital edge to PCI-6602...

    If I configure (road/DIO/Dig0/ReadyForTransfer to RTSI2, installation on PCI-6602 counter measures), while DIO task is running (starting, measure, stop) both run fine.

    But I need to sync.

    If I first set up task HSDIO,

    Then do road, set up and commit the task of counter configuration works very well.

    But DIO-32HS beginning gives higher error.

    Because of some course which is required for the DIO task, but is blocked by connection PCI6-RTSI2?


    Another development name of the channel to PFI6 instead of Dig0/ReadyForTransfer

    or a DIO task commit before routing and configuration of another task.

    But still don't know what to say error.

  • How to read / write to a HID device with call a library function?

    I had tons of problems to read from a device USB HID in VISA. I had no problem make a driver for him and write it in LabVIEW. However, whenever I try to read using Read Visa, Visa USB Control In or interrupt USB event get different types of error messages.

    I decided to give up this route and talk to the device through hid.dll, setupapi.dll and any other .dll that I need to use. The problem is that I'm not sure I correctly use the nodes to call a library function... I've seen several KB articles that explain how to set up the nodes call library feature, but I need more information. I can configure stuff and sometimes get things to work, but I don't always know what each specific selections in Settings tab is doing. Can someone give me more detailed information on what do the settings tab and all of its components?

    Thank you


    Have you looked HERE?


  • Is a USB or card reader available for iPhone accessory 6, with

    I have an iPhone 6 more. I want to attach a USB * Card reader to improve the memory of the iPhone. Is such a device available for I phones?

    Take a look at Amazon see also Bluetooth hardrives

    But if your iPhone is only 16 G thinking about sell & get at least 32G.

    See you soon


  • Read/write on a single line with 6518 IO Board


    I'm trying to control inputs (line 16) and the output (line 16) a card NI6518 with visual C++.
    To do this, I want to read line by line. I tried the following code, but what does'nt seems to work.
    I wrote a class with below method: ReadLine and writing. Perhaps, I get confused with the sense/line output, uInt8...

    Can someone explain to me my error? Thank you very much!

    bool CTORInterface::ReadLine (int number, bool & value) number 0 to 7
    HTask TaskHandle = NULL;
    CString szNameBoard = "IOBOARD1".
    CString szLineID;
    szLineID.Format ("IOBOARD1/port0/line%d", number); channel with 1 line

    retrieve the handle on the task
    DAQmxCreateTask ("IOBOARD1", &hTask);)

    create an input line

    Start the task
    DAQmxStartTask (hTask);

    uInt8 data [8];
    Int32, read, bytesPerSamp;

    stop the task
    DAQmxStopTask (hTask);

    opening handle
    DAQmxClearTask (hTask);

    value of multiple bits of data extraction
    value = (bool) data [number];

    Returns true;

    bool CTORInterface::WriteLine (int number, Boolean value)

    HTask TaskHandle = NULL;
    CString szNameBoard = "IOBOARD1".
    CString szLineID;
    szLineID.Format ("IOBOARD1/port2/line%d", number); channel with 1 line

    retrieve the handle on the task

    create the output line

    Start the task
    DAQmxStartTask (hTask);

    write the value online

    uInt8 data [1];
    Int32 numWritten = 0, regenMode;
    uInt32 bytesPerChan;
    data [1] = value? 1:0;

    stop the task
    DAQmxStopTask (hTask);

    release of the handle
    DAQmxClearTask (hTask);

    Returns true;

  • I am used by a PC that allows to make a vidio comference, movies, etc. using internet.also I want to use the operating system as yours. What are the minimum requarments that you made to obtain maximum use of the Pc for intention to top with the help of Wi

    What is the pc suitabel for me?

    The current Windows operating system is Windows 7. All new computers (except for netbooks that are yet to come with XP) will come with it. Most of the new computers will be able to do what you want without any problem. For the video-conference, consider buying a laptop with a built-in webcam. If you are looking for a desktop computer, make sure that any webcam that you buy is supported in Windows 7.

    Windows XP is an operating system very well, but it's two operating systems behind now. Was there a particular reason you want to use XP? MS - MVP - Elephant Boy computers - don't panic!

  • 10401 DIO port PCI-DIO-32HS config error

  • In the target FPGA read/write control function?

    Hi people,

    I learn a lot from the sample project FPGA, including how you can easily retrieve and set controls and indicators in an FPGA using the read/write control function running in an RT target.

    However, I can't find a way to do something similar in a FPGA target.  I've been down this road before - that is, trying to move the data in/out a looping VI FPGA (void) to a (parent) FPGA VI - where my memory points to reach what I needed use.

    So I was happy to see the palette FPGA enabled me to drop the control functions to read/write on a FPGA vi target.  But alas there where tons of errors (not compatible son for target, etc.) and I guess now it's not possible.

    So, just to be sure, I'm not missing something, is there something like control functions to read/write to use in an FPGA for read/write in an another FPGA (looped)?

    In addition, why would I be able to read/write on a FPGA vi control functions if they are not supported?  (Sorry for the n00b question)

    Thank you


    maherhome wrote:

    You're right that I don't have this knot in my palette.  However, I also do not seem to have a Refnum Occurrence in the palette is in the FPGA (see below), but I need to synchronize several loops of FPGA and added research using the textfield in the VI editor (and if compiles and runs).  So 6 months to Labview and I'm fuzzy on how the palette is restricted

    I don't know what you're trying to prove here. There is no control of refnum in search in your image. Occurrences are available in FPGA, and for control of refnum for one you just right click on a function of the instance and create a control. If you can create a valid thread of a certain type of data, then you can create a control or the indicator for it, regardless of the question to know if this type of control or indicator appears in the palettes. However, the functions that you can use in the block diagram are limited by what is available in the palettes.

    maherhome wrote:

    Regarding orders read/write for the FPGA/lights, I'm surprised that the infrastructure developed to allow read/write between RT and FPGA has not mobilized to allow read/write between FPGA and FPGA.  The elements of memory function, but they are less convenient.

    You may have noticed that you cannot compile the individual parts of an FPGA VI and combine them later; This is because when you compile an FPGA VI, all its subVIs are essentially merged to create a single block diagram (with additional logic if one not reentrant Subvi is used in multiple locations, this is why it is not recommended on FPGA). The subVIs no longer exist in the FPGA compiled; reading and writing a control on them would make no sense. If you want similar behavior, use global variables - but understand that global variables store values in FPGA logic resources. Using the elements of memory (or FIFO, which can also store in memory) leaves more fabric available FPGA logic by storing data in resources specially designed for this purpose.

  • Effective use of the FPGA read/write

    I am writing an application for a CompactRIO real-time and I am looking for ways to simplify my code and reduce the CPU usage. I use FPGA to do much CAN e-mail and signal processing, then I have a VI running on the real-time processor that reads values in the FPGA, does some processing and outputs data in the FPGA. My code running on real-time parallel uses several loops running in a master/slave architecture. A single loop reads all necessary information in the FPGA in indicators and writes the values of the controls in the FPGA. The other loops read entries and manipulate the outputs via local variables.

    My question if it would be more effective to get rid of the loop which is dedicated to the communication of FPGA and has of each loop to read and write directly on the FPGA. If I use a reference block FPGA open and use the reference of the output in several loops, each read/write operation block others until it's over? Each output is changed only in one place in the code, but there are several entries that are used by multiple loops. It is even more effective for each loop of read/write for the FPGA on request? How will this affect determinism?

    Thank you



    Read/write controls is not deterministic, but I think that your previous method should work just fine, as long as you have that unique writers. If you have multiple writers, you start affected by race conditions.

    I don't think you will see a significant improvement in the performance/CPU in the alternative method. You would see big performance gains if your master loop reads more slowly indeed, but it's always a compromise.

Maybe you are looking for

  • sync the iPhone with iTunes but even different ical and contacts

    I would like to sync an iPhone to my mac, my wife and I share. Is it possible that I can connect on the same iTunes account to share our music, but keep our calendars, photos and contacts separate?  Currently, I have my own user account on the comput

  • Panel.VI printing using versions 6.1 and 8.6

    I have a large version 6.1 program that uses print to print a report long text to the default printer, which is where print impressions from; However, I need to change the default printer so that I can use this vi to print on severa

  • Not completely scan legal size with Officejet Pro 8600 more Documents

    I'm trying to scan legal documents of sizes on my Officejet Pro 8600 Plus new. I have gone through the forums, and this has been a recurring problem in the past (see link-

  • SLOW printing now

    I have a 7410 I bought new for domestic use and barley use.  It was printing fine then it started printing at a snail pace. I unplugged & unplugged for awhile and it did not do anything. I purchased & installed a new HP ink cartridge, did not help. S

  • Sharing RAM with video card

    Hey. I have Samsung laptop with video card ATI radeon x 2300 (128 MB) and 4 GB of RAM. I heard that there is a possibility to share some of the RAM of your pc with video card. I don't use all the RAM so I think it would be very good luck to increase