+xSorry that I ‘m reaching out for the same issue, but there is a lot of struggle here with no light at the end of the tunnel.
So,
block's /bgstim seemed that it would solve the problem at least of instructions, because they are at the beginning of each block so the port would open and stay on till at least the trials start. However, this didn’t work and the port does not open when the instruction pages appear.
Also, when another port opens during trial, bgstim is overwritten.
Then, trying to make instruction/ break pages and jittered intervals trial elements has also troubled me. Instruction pages are not considered stimuli, so they can be displayed by a <trial>'s /stimulustimes or –frames. Converting them to <text> stimuli is also inconvenient because the layout is messed up and / responseinterrupt does not seem to work either.
Same with break pages. Then, regarding jittered intervals I cannot think of a way that different time intervals could be presented as stimuli or trial elements.
I am attaching the script if this is of any help
I really appreciate your help so far and thank you for your time.
> block's /bgstim seemed that it would solve the problem at least of instructions, because they are at the beginning of each block so the port would open and stay on till at least the trials > start. However, this didn’t work and the port does not open when the instruction pages appear.
No. That's the expected behavior. /bgstim is executed before the *trials* start, not before any instruction pages.
> Also, when another port opens during trial, bgstim is overwritten.
/bgstim is executed exactly once, at the time explained above, so this is again the expected behavior.
Again, as mentioned before:
- Present your instructions via regular <trial> elements in a <block>, not <page> or the like.
- Same with any "break" pages.
- Regarding
> Then, regarding jittered intervals I cannot think of a way that different time intervals could be presented as stimuli or trial elements.
Just branch to a <trial iti> from every regular trial and set that ITI <trial>'s /trialduration via a variable. You'll get jittered intervals implemented as a regular trial and that trial can open the air port just like any other.