Hi,
I'm trying to use the USB-1408FS for digital output. I know that only the 1208FS and the 1608FS have been tested. In the past, I used my own mex-files using the MCC libraries under windows. But I want to run psychtoolbox under linux, and need to use PsychHID, as MCC doesn't provide their libraries for linux.
The device is detected by PsychHID:
PsychHID('Devices') returns 6 devices, 4 of them belonging to the 1408FS, as expected. I assigned the last device to daq.
err = DaqBlinkLED(daq) returns err.n = 0 and blinks the LED on the 1408FS.
internally, it runs:
err = PsychHID('SetReport',daq,2,64,uint(64)).
This shows that I can communicate with the DAQ via PsychHID.
Now the problem:
I want to set the values on port 0:
port = 0; data = 255; err = DaqDOut(daq,port,data)
No error, but the bits on the digital out are not changed.
internally, DaqDOut runs:
reportID = 2;
TheReport = uint8([0 port data]);
err = PsychHID('SetReport',daq,2,reportID,TheReport).
This should work for the 1208FS. But no error and no digital out change on 1408FS.
Ideas how I could modify the entries to PsychHID to get the digital out to change on the 1408FS? Or where I find the information so I can figure out how to set reoportID and TheReport?
Thanks, Till Hartmann
Harvard Medical School
The problem is identical on windows and linux:
Windows 7 64bit, Matlab 2013a, PsychtoolboxVersion 3.0.11, libusb-1.0.dll
Linux Ubuntu 14.04, Matlab 2016a, PsychtoolboxVersion 3.0.12
I'm trying to use the USB-1408FS for digital output. I know that only the 1208FS and the 1608FS have been tested. In the past, I used my own mex-files using the MCC libraries under windows. But I want to run psychtoolbox under linux, and need to use PsychHID, as MCC doesn't provide their libraries for linux.
The device is detected by PsychHID:
PsychHID('Devices') returns 6 devices, 4 of them belonging to the 1408FS, as expected. I assigned the last device to daq.
err = DaqBlinkLED(daq) returns err.n = 0 and blinks the LED on the 1408FS.
internally, it runs:
err = PsychHID('SetReport',daq,2,64,uint(64)).
This shows that I can communicate with the DAQ via PsychHID.
Now the problem:
I want to set the values on port 0:
port = 0; data = 255; err = DaqDOut(daq,port,data)
No error, but the bits on the digital out are not changed.
internally, DaqDOut runs:
reportID = 2;
TheReport = uint8([0 port data]);
err = PsychHID('SetReport',daq,2,reportID,TheReport).
This should work for the 1208FS. But no error and no digital out change on 1408FS.
Ideas how I could modify the entries to PsychHID to get the digital out to change on the 1408FS? Or where I find the information so I can figure out how to set reoportID and TheReport?
Thanks, Till Hartmann
Harvard Medical School
The problem is identical on windows and linux:
Windows 7 64bit, Matlab 2013a, PsychtoolboxVersion 3.0.11, libusb-1.0.dll
Linux Ubuntu 14.04, Matlab 2016a, PsychtoolboxVersion 3.0.12