| Reference | Downloads | Github

Sending event triggers from PsychoPy to BioSemi/Actiview via parallel port


we are doing an EEG experiment using PsychPy (1.84.2) and BioSemi/Actiview Software. The computers are using Windows 7 and are connected via parallel port.

We defined event triggers (e.g. positive (1), neutral (2), negative (3) items or block triggers (101-109)) in PsychoPy which are supposed to be sent to the BioSemi/Actiview Software. Some triggers work perfectly, others are not send at all or more often than programmed in PsychoPy. Some triggers are received by BioSemi/Actiview Software which haven’t been defined and therefore shouldn’t be sent at all. We can’t figure out any system by which the triggers are sent or not.

Triggers are sent without any problems using presentation in an other experiment. So we don’t believe it is due to any hardware problems. Also, we checked the triggers in PsychoPy itself and don’t see any problem there, either.

We’d be grateful for any suggestions about what we can try… Right now we are completely clueless.
Also, we’re beginners in programming so bear with us… (we had help from an experienced programmer while creating the experiment in PsychoPy, though).

Hello Emotion,

did you (or the programmer who helped you) use the built-in function to send the triggers or a costum-built function? If the latter is the case, could you post the custom-built code here?


Hi emotion,

I am using the same setup (windows 7, biosemi) and I had some weird problems with triggers as well. This is a few months ago, but what helped me – I really made sure that my trigger switches were going on / off after my setAutoDraw() was being called. Can you open up the code view, from the builder view, do a find on “setAutoDraw” and tell me where you see “p_port.setData”. Is it after or before your setAutoDraw?

Also, I remember I had to put a few calls to time.sleep() function in my script to make sure I wasn’t flipping one of the trigger switches on/off too quickly.

Are you using biosemi 254 and 255 trigger codes to start and stop saving your recording? this also tripped me up. Can you post a snippet of your code? Maybe I can help.

Last thing. It might help to read through my convo with Jon. I post some snippets of my funky code, and finally the code that solved the problem: Can't send trigger during first 500ms of a 2750ms trial

1 Like