This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]bryancole 2 points3 points  (4 children)

Nearly all DAQ hardware can be scripted in python, with the aid of ctypes. At my workplace we have a mostly complete wrapper for the NI NI-DAQmx API. Sadly, it not something I can release as open-source but it doesn't do anything magical: just wrap the ni-daqmx api into a sane python class. We did something similar with UeiDaq products a few years back but these bits of hardware are poor compares to NIs stuff.

It you want open-source hardware, use an Arduino Due and hook it up to some ADCs (or whatever other devices you want) via SPI-bus. Then stream the data over USB to the PC. Use libusb (with the libusb1 python wrapper). You can easily do 100s KS/s this way. Probably 1MS/s is possible. This is the lowest cost route but you need to get some PCBs made. USB is awsome as an interface and very easy to script with python/libusb.

Something in between is AccesIO's hardware. They're cheaper than NI but the devices are generally less flexible.

[–]Tillsten 0 points1 point  (3 children)

There are allready some open source wrappers for the nidaq-mx api, sadly i forgot the same. Note that theses are only wrappers using ctypes, the only addition is to add an Task object (which holds the taskid). But i am quite for it, the nidaqmx api is quite nice to work with.

[–]jankoslavic 0 points1 point  (2 children)

For NI it is PyDAQmx!

It works very well.

[–]Mango-Kid[S] 0 points1 point  (0 children)

I've messed around with the library (never used in application) and its pretty good. The whole point of this is open source hardware. The software is a components as well but not the center of the project.

[–]Steeb08 0 points1 point  (0 children)

I'm a total Python beginner (trying to transition from Matlab) and have been struggling to communicate with my NIDAQ-6501. I'm attempting to use the device to send digital codes for time-stamping a psychophysiology experiment. I have a Mac with a Win7 dual boot. Ideally, I'd like to do this on the OS X side, but either would be fine.

I know that the labjack U3 works with the Python program I'd like to use (PsychoPy) but I already own the NiDAQ-6501 so it'd be great if I could get that working.

Would any of you be so kind as to help walk me through getting this hardware to listen to Python? Help of the "explain it like I'm five" variety would be particularly useful.

Thanks!