Driver Development Kit (DDK)

cancel
Showing results for 
Search instead for 
Did you mean: 

How to talk to DAQPad-6015 at low level?

Jeremy,

I am somewhat reassured that NI is going to support USB in OS's other than Windows, but not at all reassured by the comment that the DAQPad-6015 is a "legacy" product and may not be supported. I have $7,000 of them, and they have about 10 hours of data collection on each of them.

Does this mean that I may well have the choice of:

1. writing off $7,000 worth of DAQPad-6015 hardware
2. writing off the Health Canada, CSA and Research Ethics Board approvals that I had to get to be able to use the 6015s, (total cost of gaining approvals is about $30,000)
3. re-applying for these three approvals (another $30,000 and another 6 months delay

or:

1. using an unreliable operating system (Windows) thereby jeopardizing our experiments.

or:

1. developing our own hardware for the task so that we are never in this situation again.

The best answer for me is for NI to provide the documentation on the protocol that it used to talk to the DAQPad-6015 and to program its registers. NI must have this information, but to date has not made it available.

Sincerely,

Peter Gregson
0 Kudos
Message 11 of 13
(4,554 Views)
For my application, any support for the newer hi-speed USB DAQ products on OSX would have been great. 

That said, one problem I ran into was the lack of thread safety in the NI-DAQmx Base.  Apparently I shouldn't (and wasn't able to in practice) access the driver from more than one thread.  This become a serious problem when the devices have small to medium on-device sample buffers.  To get reasonable performance across multiple devices requires that reads be called with small (or zero) timeouts. 

This effectively reduces the io problem to a polling scenario which is not good for application performance. 

Also accessing multiple devices in the initialization and sampling phases from a single thread introduces all kinds of code complexity.

There is also an issue that I ran into with latency of scan initialization with the NI-6009's over the USB bus.  There are techniques available to minimize or eliminate this (streaming or very flexible triggering options).

If these issues can't be addressed within a NI-DAQmx Base implementation, I would want RLP information.  Regardless of the associated complexity of doing my own USB level device driver.

Cheers,
Jeff
0 Kudos
Message 12 of 13
(4,551 Views)

Peter, I'd like to discuss our options offline.  Can you send me an e-mail at jeremy.crawley@ni.com ?

 

Jeff, thanks for the feedback.

0 Kudos
Message 13 of 13
(4,540 Views)