Driver Development Kit (DDK)

cancel
Showing results for 
Search instead for 
Did you mean: 

How to talk to DAQPad-6015 at low level?

I have a DAGPad-6015 USB controlled Multi DAQ board. I would like to use it with a Linux box.
I had the hint that the Hardware development kit (HDDK) can help me putting it under Linux.
I could figure out, that the Visa can talk to it. I can open de device and get basic properties. But Visa knows nothing how to access the details in RAW mode.
I could read a lot of details about the Register Level Programing of this device in the E-series Help and other resources but one thing: how can I tell the device, that I am sending something to the register, or I am requesting data from the register. Basically the I/O point I am stucked at.
Anyone have a hint?

Tomio

0 Kudos
Message 1 of 13
(10,661 Views)
What I have digged out:
STC register set communication:
Through packages with request type 0x42 and 0x40 and request 0x91 sends the data into the registers.
Request 0x90 receives data.
The machine has a pack of other registers. Special packets are sent with request 0x11 and received via 0x10.

This part is not documented in the E-series help and the STC manual.

Is there any way to get closer?

The application should program up an acquisition with software arm, and wait until other electronics perform their task, then do a set of measurements, then wait again. The number of data is in the order of 1 million points/measurement, and I would like to avoid the time lag of reinitializing the device for each data points and also I would prefer keeping the process as clean as possible.
0 Kudos
Message 2 of 13
(10,566 Views)
Have you made any progress with this problem?  I've got a similar problem where I need to support the 6015 or 6020E on OSX. I'm fairly comfortable at the driver level in OSX but I haven't seen any register-level documentation for the above devices.

Thanks,
Jeff
0 Kudos
Message 3 of 13
(10,273 Views)
Hi Jeff,

Sad news, but I have abandoned the project, having not enough time (and information available).
Since then I learned a bit about the USB, but not enough time to continue. It turned out, that an ARM7 board for much less money can help me out, and I will return to this problem when I would have a bit of time.

The chipset of the 6015 is in the E-series- the register programming manual and help are available -do a search in the NI homepages.


Tomio
0 Kudos
Message 4 of 13
(10,265 Views)
I have the same problem as well. I am very familiar with register-level programming, but I cannot find information on the register assignments anywhere. Developing in Windows environment is not an option at all, and so using LabWindows/CVI and the run-time LinuxCVI is not an option either.

Can anyone help?
Thanks,
Peter Gregson
0 Kudos
Message 5 of 13
(9,907 Views)
Hi gregson,

We tried to get register programming info from NI for the 6015 or any other higher end USB DAQ devices, but to no avail. We made a serious attempt to try to shoehorn 4 NI-6009s to solve our problem, but found that the performance just wasn't there.  It was impossible to get sampling at the max data rates across the 4 channels.

We eventually went with 4 LabJack UE9's sampling our four channels independently.  It was still quite tricky, but produced good results in the end.  They have linux drivers as well.  Feel free to contact me at jeffNOSPAM.mullerNOSPAM@gmail.com (remove the NOSPAMS) if you'd like some of the details.

Cheers,
Jeff
0 Kudos
Message 6 of 13
(9,890 Views)
You see, this is exactly the policy I did not like to follow. Buying a 900 Euros device and not being able to use it because of the lack of information is frustrating me.
 I needed at the moment only two counters from the device, but I also liked the 16bit A/Ds at hand as an option. The oeffered Linux compatible unit had only 12 bit converters, and  I shold have payed another couple hundreds of Euros and start from scratch.
This caused me to turn away from NI and search for something more basic. Finally I spent half as much time on my development board and had a fully functioning result only for 20th of the price.
T.
0 Kudos
Message 7 of 13
(9,880 Views)
No USB data acquisition products are supported for Linux according to the Readme.txt file in the MHDDK. Why is this? I thought that USB was arguably the most standard and simplest bus.

It appears that NI doesn't allow me to program USB in Linux. This renders my five DAQPad 6015 units useless to me, and at great expense.

Is there any way that I can develop applications in Linux that can work with my DAQPad-6015 units?

Regards,

Peter
0 Kudos
Message 8 of 13
(9,854 Views)
In my experience the USB bus is quite a bit more complicated than a PCI, PCMCIA or Expresscard bus.

I think your only option at this point would be to reverse engineer the protocol that NI uses to communicate with the 6015 over USB.  A Windows USB snoop shouldn't be too hard to come by.  Use the snoop to determine the commands you need to control your acquisition tasks on Windows.  You could then implement a barebones comedi (www.comedi.org) driver.

This may be risky because they likely revise their HW from time to time under the same product number.  If you're just looking to recover you original investment in the short-term, it may be worth it.

Cheers,
Jeff
0 Kudos
Message 9 of 13
(9,847 Views)

Hello all,

As you are aware, the MHDDK does not currently support USB devices.  We are currently investigating adding support for some USB DAQ products.  The legacy USB DAQ devices (e.g. DAQPad-6015) use an older method of communication that we are not necessarily going to support in the MHDDK.  Instead we will be focusing on some of the newer USB DAQ devices.  NOTE: Which devices will be supported and when that support will be available is still being decided. 

For those of you using the legacy DAQPads, is there any functionality provided by those devices that is not available on some of the newer USB DAQ devices (e.g. USB-6210 family or USB-6221 family)?  As for operating systems, it looks like both Linux and OSX were mentioned in this thread.  For those OS's, would a higher level driver be preferred or do you want the lower level control of RLP?

 

Thanks,

Jeremy

0 Kudos
Message 10 of 13
(9,827 Views)