 - Forum
- Hardware
- TTL Signals - Problem to communicate with an external equipment
|
TTL Signals - Problem to communicate with an external equipment
TTL Signals - Problem to communicate with an external equipment
Hy,
We used Direct RT since a long time ago in my French research institute.
I now want to use external equipment, a button box.
The button box is an unwell-known device. I’ve bought it with “The Tests for Attentional Performance (TAP)”, PsyTest.
The reaction keys are connecting through a parallel port.
As my computer is recent (parallel port is unfortunately no longer standard equipment), I’ve installed a PCI card with a parallel port DB 25.
When I search for port on my computer (right click on "My Computer" and select "Properties" and the "Device Manager"), under "Ports", I see: a) a Printer Port (LPT1, 03F8-03FF) but also b) a PCI Parallel Port (LPT3, 9400-9407).
I think my response box is on this last port LPT3.
And I run my TAP software and therefore my button box with this port (LPT3, 9400-9407).
The button box well works with my TAP software.
In Direct RT, in the TTL I/O Test window, in the Port Address box, LPT3 is displayed “LPT3: absent”.
I’ve tried to enter it myself, by converting the hexadecimal address (9400) to decimal (37888).
I’ve written in the Port address box this information: 37888 (LPT3:378H).
When I clicked on “Read”, an error message appeared and the TTL I/O Test window is automatically closed.
When I test with the port address 888 (LPT1:378H), i.e. the only one proposed in the list, and when I press one of two button, or the other, or both at the same time, nothing appended. Should some value change when I press one of the buttons? What value?
I’ve read your documentation, and I don’t understand this sentence: “You can test to see if your external equipment can send values to this port address. Try it and see. If successful, you will see the value change to whatever value you send from your external equipment.”
I’ve tried to run the sample receiveTTL.csv.
Of course, It doesn’t works.
In the .csv file, how can I find the ttl codes, i.e the valid signals from port, that I have to specify in the time column (eg., rt:1,2,3,4,5,6,7,8,(889))?
I hope that my explanations are clear.
Many thanks by advance
Aurelie Dommes
I've replaced my version of IOText.exe with the attached (zipped) version that you have posted in the forum.
The message error do not appear anymore.
I have entered this information in the Port Address :
37888 (LPT3:378H)
When I click the "Read" button next to it, below where it says "Monitor" I can watch the value of 255.
But when I press one of two buttons of my box, or the other, or both at the same time, nothing appended. Should 255 value changes when I press one of the buttons?
I’ve tried to code in the sample csv file (receiveTTL.csv), in the time column this : rt:255,(37889)
It doesn’t work…
thanks!!
I think this Port Address is more accurate!!
37888 (LPT3:9400H)
I have entered it, but nothing hapened when I press the button...
Aurelie,
I don't think you are doing anything wrong. I think the problem is coming from a limitation on DirectRT (as well as MediaLab) v2008 and prior. The limitation has been (and still is) that port addresses greater than ~32000 can not be read as valid and so the values don't get sent. This is an issue we are working to overcome in the next version due out very soon. I've contacted Trevor who is working on this section of the 2010 version now to see if we will have this resolved in the coming weeks. The beta version for 2010 is available now to v2008 users but I am not sure yet if this particular issue has been fixed. It is unfortunate that add-on parallel port cards do generally not come with addresses less than 32000 (decimal). If you can set this as a parameter of your card, that ought to resolve it as well. If you *can* do that please let us know because there are other users in the same boat right now and this would be a nice immediate fix.
Thank you for this information.
It is unfortunate that I cannot use the add-on parallel port card (with an address greater than 32000 decimal)... maybe in the future....
I don't know how to set this as a parameter of my card... and I don't even know if it is possible.
many thanks for your answer.
ps: I'm returning to the solution of keyboard press instead of using TTL signals of my button box....
Aurélie
UPDATE: As of about April 2010, this issue has been resolved in DirectRT 2008. Parallel port cards with addresses between 0 and 65,535 now work perfectly.